public void ShowFieldsInTable() { Txt_TableName.Text = TableName; SQLiteDataAdapter da = new SQLiteDataAdapter("pragma table_info (" + TableName + ")", cnn); DataTable dt = new DataTable(); da.Fill(dt); _fieldlist.Clear(); foreach (DataRow dr in dt.Rows) { Models.TableField _fld = new Models.TableField(); _fld.FldName = dr[1].ToString(); _fld.FldType = dr[2].ToString() == "INT" ? "INTEGER" : dr[2].ToString(); _fld.FldIsNotNull = Convert.ToInt16(dr[3]) == 0 ? "ALLOW NULL" : "NOT NULL"; _fld.FldDefaultValue = dr[4].ToString(); _fld.FldIsPrimary = Convert.ToInt16(dr[5]) == 0?"NO":"YES"; ////YES, NO _fld.FldIsUpdated = false; _fld.FldIsUnique = FXS.IsFieldUnique(TableName, _fld.FldName); _fld.FldCollation = FXS.GetFieldCollation(TableName, _fld.FldName); _fieldlist.Add(_fld); _origfieldlist.Add(_fld); } Dg_FieldList.DataSource = _fieldlist; for (int i = 0; i < Dg_FieldList.Rows.Count; i++) { Dg_FieldList.Rows[i].ReadOnly = true; foreach (DataGridViewCell cell in Dg_FieldList.Rows[i].Cells) { cell.ReadOnly = true; } } }
public static string PrepareFieldString(Models.TableField MyField) { string _colll = "", _defDEGER = "", _unik = "", _nullmu = "", _primm = "", _deflt = "", _typ = "TEXT"; if (MyField.FldType != null) { _typ = MyField.FldType; } if (MyField.FldCollation != "NONE" && _typ == "TEXT") { _colll = " COLLATE UTF8CI "; } if (MyField.FldIsNotNull == "NOT NULL") { _nullmu = " NOT NULL "; //"ALLOW NULL" : "NOT NULL"; } if (MyField.FldIsUnique == "YES") { _unik = " UNIQUE "; } if (MyField.FldDefaultValue != null) { _deflt = MyField.FldDefaultValue; } if (_deflt.Length > 0 && _typ == "TEXT") { _defDEGER = " DEFAULT '" + _deflt + "'"; } else if (_deflt.Length > 0 && _typ == "INTEGER") { _defDEGER = " DEFAULT " + _deflt; } else if (_deflt.Length > 0 && _typ == "NUMERIC") { _defDEGER = " DEFAULT " + _deflt; } if (MyField.FldIsPrimary == "YES") { _primm = " PRIMARY KEY"; ////YES, NO } return("[" + MyField.FldName + "] " + _typ + _defDEGER + _nullmu + _unik + _primm + _colll); }
private void AddEmptyField(bool _pk) { Models.TableField _fld = new Models.TableField(); if (_pk) { _fld.FldCollation = "NONE"; } else { _fld.FldCollation = "UTF8CI"; } _fld.FldDefaultValue = ""; if (_pk) { _fld.FldName = "Id"; } else { _fld.FldName = ""; } _fld.FldIsNotNull = "ALLOW NULL"; ////"ALLOW NULL" : "NOT NULL"; if (_pk) { _fld.FldIsPrimary = "YES"; } else { _fld.FldIsPrimary = "NO"; //YES, NO } if (_pk) { _fld.FldType = "INTEGER"; } else { _fld.FldType = "TEXT"; } _fld.FldIsUnique = "NO"; _fld.FldIsUpdated = false; _fieldlist.Add(_fld); }