tangbing - 2008-5-31 9:46:00
例如
create table proc_Users
(
@username varchar(20)
)
as
select * from 表(把这个表设置为一个变量) where username=@username
go
:~
tangbing - 2008-5-31 9:48:00
create table proc_Users
(
@username varchar(20)
)
as
select * from 表(把这个表设置为一个变量,最好是页面可以传进来的变量) where username=@username
go
比如:
create table proc_Users
(
@username varchar(20)
@表
)
as
select * from 表(把这个表设置为一个变量,最好是页面可以传进来的变量) where username=@username
go
k46577471 - 2008-5-31 10:06:00
create table proc_Users
(
@username varchar(20),
@tablename varchar(50)
)
as
declare @sqlstr varchar(500)
set @sqlstr = 'select * from ' + @tablename + ' where username= ''' + @username + ''''
exec(@sqlstr)
go
tangbing - 2008-5-31 10:07:00
顶:D
非常感谢非常感谢 有例子太棒了
tangbing - 2008-6-4 15:29:00
alter proc proc_Users
@username varchar(20),
@tablename varchar(500)
as
declare @sqlstr varchar(500)
set @sqlstr = 'select * from ' + @tablename + ' where id= ' + @username
exec(@sqlstr)
go
谢谢你了 这个存储过程 ''' + @username + '''' 后面的引号真的有问题
k46577471 - 2008-6-4 17:44:00
你改成where id=那当然没问题了(数字之间的比较),你以前是用username做,你说它是不是字符串?既然是,在数据库中是不是要用单引号括起来?
现在遇到了两个单引号(一个是整体字符串的结束,另一个是字符串中嵌套字符串的开始),会有什么状况发生?自己打开查询分析器去试试,然后试试到底几个单引号符合要求!(我在这里直接书写的可能有错误,不要以为你改成where id=就没事了,以后你又想用username时自己去抓狂吧!):_onion14:
tangbing - 2008-6-6 9:01:00
:L 汗 是有很多BAD改正!改正!
weblogical - 2008-6-17 16:36:00
create table proc_Users???
:L