sql怎么添加参数字段 sql中一个表的列是动态变化的,请问可不可以动态添加参数字段例如这种语句 exec ('alter table tbl_MonthTable3 add ' +@DateMonth+' nvarchar(25)')虽然语法没有问题,但是执行没有效果。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的@DateMonth是数字还是字符串啊 create table tbl_MonthTable3(id int identity)declare @DateMonth as varchar(10)select @DateMonth='C1'exec ('alter table tbl_MonthTable3 add ' +@DateMonth+' nvarchar(25)')select * from tbl_MonthTable3id C1----------- -------------------------(0 行受影响)没问题啊 @DateMonth 是一个可变字符串 @DateMonth是传到存储过程中的参数 修改表结构需要你的数据库登陆账户具有相应的权限,参见MSSQL2000 服务器角色和数据库角色关系:http://hi.baidu.com/idragonet/blog/item/e2d0670e5777b7cf7acbe118.html sqlparameter paramDateMonth = new sqlparameter("@DateMonth", sqldatatype.datetime); SqlCommand SCommand = new SqlCommand(); SCommand.Connection = new sqlconnection("你的连接字符串"); SCommand.CommandText = "alter table tbl_MonthTable3 add ' +@DateMonth+' nvarchar(25)"; SCommand.Parameters.Add(paramDateMonth); SCommand.Connection.Open(); SCommand.ExecuteNonQuery(); SCommand.Connection.Close(); datatime dt = paramDateMonth.value.tostring(); exec ('alter table tbl_MonthTable3 add ''' +@DateMonth+''' nvarchar(25)') declare @DateMonth nvarchar(25)set @DateMonth = Convert(varchar(10),@startTime,120)exec ('alter table tbl_MonthTable3 add ' +@DateMonth+' nvarchar(25)')刚刚测试发现参数是像日期这种字符串"2008-06"不能直接添加,不知道怎么解决 我输入的参数是datdatetime类型的,这种如果在外部处理成'[日期]'这种格式执行没问题,但是不知道在存储过程内部有没有办法处理呢,9L的方法提示有错误,谢谢解答 exec('alter table Tb add '+cast(@DateMonth as varchar))应该为字段名 HttpWebRequest.GetResponse问题,高手来 c#.NET 生成的程序在别的域机器上运行不了 求教:判断SHIFT键是否按下和抬起. .net向存储过程传递datetime类型参数有问题 linq里面orderby是怎么排序的,稳定吗,效率是多少有没有人知道 自动回答网页问题的系统。 简单的调用自己写的dll的问题(初学 不会啊) 急,高手请进 选中 DataGridView 控件的行 哪位大哥可以帮我运行一个C#开发的.net Remoting程序(要求CPU为2.4GHZ以上) 请推荐学习VisualC#的入门书 悲剧了,VS2005控件全部不可用
select @DateMonth='C1'
exec ('alter table tbl_MonthTable3 add ' +@DateMonth+' nvarchar(25)')
select * from tbl_MonthTable3id C1
----------- -------------------------(0 行受影响)没问题啊
参见MSSQL2000 服务器角色和数据库角色关系:
http://hi.baidu.com/idragonet/blog/item/e2d0670e5777b7cf7acbe118.html
SqlCommand SCommand = new SqlCommand();
SCommand.Connection = new sqlconnection("你的连接字符串");
SCommand.CommandText = "alter table tbl_MonthTable3 add ' +@DateMonth+' nvarchar(25)";
SCommand.Parameters.Add(paramDateMonth);
SCommand.Connection.Open();
SCommand.ExecuteNonQuery();
SCommand.Connection.Close();
datatime dt = paramDateMonth.value.tostring();
set @DateMonth = Convert(varchar(10),@startTime,120)
exec ('alter table tbl_MonthTable3 add ' +@DateMonth+' nvarchar(25)')
刚刚测试发现参数是像日期这种字符串"2008-06"不能直接添加,不知道怎么解决
应该为字段名