我正在开发一个Web应用程序,需要在其中使用ALTER Table。这是我的代码:
ALTER TABLE [tablename] ADD [column-name] [Type] DEFAULT [default-value] NULL/NOT NULL
现在,我想通过文本框动态更改[列名]。我怎样才能做到这一点?另外,我在AddWithValue中使用了@name,但是它不起作用!有谁能够帮我?谢谢
这是我的整个代码:
SqlConnection sqlconn4 = new SqlConnection(ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString); SqlCommand sqlcomm4 = new SqlCommand("ALTER TABLE aspnet_Membership ADD @column int DEFAULT 0 NOT NULL", sqlconn4); sqlcomm4.Parameters.AddWithValue("@column", TextBox1.Text); sqlconn4.Open(); sqlcomm4.ExecuteNonQuery(); sqlconn4.Close();
使用sp_rename过程可以更改列名。
sp_RENAME 'Table_First.Name', 'NameChange' , 'COLUMN' public void AddNewColumn(string tableName, string columName, string dataType) { string commandText = String.Format("ALTER TABLE {0} ADD {1} {2} ", tableName,columName,dataType); using (var sqlConnection = new SqlConnection("====")) { var cmd = sqlConnection.CreateCommand(); cmd.CommandText = commandText; sqlConnection.Open(); cmd.ExecuteNonQuery(); } }