1

c# で mysql データベースのテーブル クエリを作成する方法..

MySqlConnection con = new MySqlConnection("Server=localhost;Database=demo_test;UID=root;Password= ");

MySqlCommand acmd = new MySqlCommand("CREATE TABLE first (" + a.Columns[0] + " int(20) NOT NULL auto_increment,'" + a.Columns[1].ToString() + "' varchar(100) NOT NULL default,PRIMARY KEY (" + a.Columns[0]+") 1", con); 
con.Open();

acmd.ExecuteNonQuery();

それは私にエラーを与える

SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、1 行目の ''name' varchar(100) NOT NULL default,PRIMARY KEY (id) 1' 付近で使用する正しい構文を確認してください。

4

2 に答える 2

2

SQL と直接戦う代わりに、次のようにMig#を使用できます。

        var schema = new DbSchema(ConnectionString, DbPlatform.MySql5);
        schema.Alter(db => db.CreateTable("first")
            .WithPrimaryKeyColumn(a.Colunns[0], DbType.Int32).AsIdentity()
            ...);
于 2015-12-23T15:10:02.097 に答える
1

これは、値を識別子ではなく文字列に変換する単一引用符で列名をラップしているためです。一重引用符を削除すると機能します。

string query = @"CREATE TABLE first (" + a.Columns[0] + " int(20) NOT NULL auto_increment, " 
                     + a.Columns[1].ToString() + " varchar(100) NOT NULL default,
                     PRIMARY KEY (" + a.Columns[0]+")"
于 2013-02-25T09:18:09.067 に答える