SQL Server批量添加表的记录数据

zxdyu2009 2010-04-19 02:30:58

create table tb_IdNameMap
(
tagID int identity(1,1) not null,
tagName varchar(32)
)

insert into tb_IdNameMap values('hehe_0')

declare @i int
declare @strTemp varchar(60)
declare @strSql varchar(200)
set @i = 1
set @strTemp = ''
set @strSql = ''

while @i < 100000
begin
set @strTemp = 'hehe_' + ltrim(@i)
set @strSql = 'insert into tb_IdNameMap values' + '(' + @strTemp + ')'
exec(@strSql)
set @i = @i + 1
end

select * from tb_IdNameMap

服务器: 消息 128,级别 15,状态 1,行 1
在此上下文中不允许使用 'hehe_1'。此处只允许使用常量、表达式或变量。不允许使用列名。
服务器: 消息 128,级别 15,状态 1,行 1
在此上下文中不允许使用 'hehe_2'。此处只允许使用常量、表达式或变量。不允许使用列名。
.........
这里插入的行的字段的值是变化的啊,每次添加新的值,但这里提示要常量,在C++代码里相似功能的写就没问题。
请问如何解决?
...全文
80 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxdyu2009 2010-04-19
  • 打赏
  • 举报
回复
恩,看了几位的,汗,真笨死了我。呵呵
htl258_Tony 2010-04-19
  • 打赏
  • 举报
回复
create table tb_IdNameMap
(
tagID int identity(1,1) not null,
tagName varchar(32)
)

insert into tb_IdNameMap values('hehe_0')

declare @i int
declare @strTemp varchar(60)
declare @strSql varchar(200)
set @i = 1
set @strTemp = ''
set @strSql = ''

while @i < 100000
begin
set @strTemp = 'hehe_' + ltrim(@i)
set @strSql = 'insert into tb_IdNameMap values' + '(' + quotename(@strTemp,CHAR(39)) + ')'
exec(@strSql)
set @i = @i + 1
end

select * from tb_IdNameMap
或这样也行
永生天地 2010-04-19
  • 打赏
  • 举报
回复
declare @i int
declare @strTemp varchar(60)
declare @strSql varchar(200)
set @i = 1
set @strTemp = ''
set @strSql = ''

while @i < 100000
begin
set @strTemp = 'hehe_' + ltrim(@i)
set @strSql = 'insert into tb_IdNameMap values' + '(''' + @strTemp + ''')'
exec(@strSql)
set @i = @i + 1
end
--小F-- 2010-04-19
  • 打赏
  • 举报
回复
print出来看看...应该是差引号
htl258_Tony 2010-04-19
  • 打赏
  • 举报
回复
create table tb_IdNameMap
(
tagID int identity(1,1) not null,
tagName varchar(32)
)

insert into tb_IdNameMap values('hehe_0')

declare @i int
declare @strTemp varchar(60)
declare @strSql varchar(200)
set @i = 1
set @strTemp = ''
set @strSql = ''

while @i < 100000
begin
set @strTemp = 'hehe_' + ltrim(@i)
set @strSql = 'insert into tb_IdNameMap values' + '(''' + @strTemp + ''')'
exec(@strSql)
set @i = @i + 1
end
bancxc 2010-04-19
  • 打赏
  • 举报
回复
create table tb_IdNameMap
(
tagID int identity(1,1) not null,
tagName varchar(32)
)

insert into tb_IdNameMap values('hehe_0')

declare @i int
declare @strTemp varchar(60)
declare @strSql varchar(200)
set @i = 1
set @strTemp = ''
set @strSql = ''

while @i < 100000
begin
set @strTemp = 'hehe_' + ltrim(@i)
insert into tb_IdNameMap values(@strTemp)
set @i = @i + 1
end
第8章 数据库技术 8.1 连接数据库 实例264 使用ODBC DSN连接SQL Server数据库 实例265 用ADO动态连接数据库 8.2 添加数据 实例266 利用INSERT语句批量插入数据 实例267 利用SELECT INTO生成临时 8.3 更新数据 实例268 批量修改数据 实例269 将指定字段数据为空的记录添上数据 8.4 删除数据 实例270 删除单条数据 实例271 删除数据库中无用处的记录 8.5 视图 实例272 动态创建视图 实例273 通过视图更改数据 实例274 删除视图 8.6 存储过程 实例275 创建存储过程 实例276 删除存储过程 实例277 在程序中使用存储过程 实例278 调用具有输出参数的存储过程 实例279 编写扩展存储过程 8.7 数据库结构的读取与修改 实例280 读取Access数据库结构 实例281 读取SQL Server数据库结构 8.8 图片、多媒体数据录入技术 实例282 对Access数据库进行录入和提取图片 实例283 对SQLServer数据库进行录入和提取多媒体文件 8.9 数据备份恢复 实例284 Access数据库备份与还原 实例285 SQL Server数据库备份与恢复 实例286 定时数据备份 8.10 其他数据库技术 实例287 断开SQL Server数据库与其他应用程序的连接 实例288 在Visual C++中执行事务 实例289 在程序中执行SQL脚本 实例290 利用SQL语句执行外围命令 实例291 枚举SQL Server服务器 实例292 附加数据库 实例293 分离数据

34,589

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧