我有一个程序,我将值插入到我的表中.
declare @fName varchar(50),@lName varchar(50),@check tinyint
INSERT INTO myTbl(fName,lName) values(@fName,@lName)
Run Code Online (Sandbox Code Playgroud)
编辑:
现在我想检查是否插入成功设置@check = 0 else @check = 1
我正在使用一个过程来选择名字和姓氏
declare
@firstName nvarchar(50),
@lastName nvarchar(50),
@text nvarchar(MAX)
SELECT @text = 'First Name : ' + @firstName + ' Second Name : ' + @lastName
Run Code Online (Sandbox Code Playgroud)
该@text 值将被发送到我的邮箱,但名字和姓氏进来单行.我只需要在第二行显示姓氏
O/P 名字:Taylor姓:Swift,
我需要输出如下格式
First Name : Taylor
Last Name : Swift
Run Code Online (Sandbox Code Playgroud) 我有一个存储过程,希望检查日期是在固定日期和当前日期/时间之间(带GETDATE()):
SELECT
a, b
FROM myTbl
WHERE
DATE BETWEEN 'Day start datetime' AND GETDATE()
Run Code Online (Sandbox Code Playgroud)
...例如 :
WHERE
DATE BETWEEN '2013-09-10 00:00:00.00' AND 'GETDATE()'
Run Code Online (Sandbox Code Playgroud)
怎么做?
Postgres 版本:
PostgreSQL 9.2.4 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3), 64-bit
Run Code Online (Sandbox Code Playgroud)
我们使用 vm 转换器将系统从一台服务器转移到另一台服务器(具有更好的 cpu 和 RAM),当我尝试备份数据库时出现错误:
pg_dump: reading schemas
pg_dump: reading user-defined tables
pg_dump: reading extensions
pg_dump: reading user-defined functions
pg_dump: reading user-defined types
pg_dump: reading procedural languages
pg_dump: reading user-defined aggregate functions
pg_dump: reading user-defined operators
pg_dump: reading user-defined operator classes
pg_dump: reading user-defined operator families
pg_dump: reading user-defined text search parsers
pg_dump: reading user-defined text search templates
pg_dump: reading user-defined text search …Run Code Online (Sandbox Code Playgroud) 我创建表
CREATE TABLE tbl
(
ID int,
FirstName nvarchar(50),
LastName nvarchar(50)
)
Run Code Online (Sandbox Code Playgroud)
有存储过程在哪里
UPDATE tbl
SET FistName = @firstName , LastName = @lastName
WHERE ID = @ID
Run Code Online (Sandbox Code Playgroud)
现在,当我调用我的存储过程时, exec myProc 1,'John',''只想更新我写的那些列.例如,如果我有我的表值:
ID : 1
FirstName: Bob
LastName : Brown
Run Code Online (Sandbox Code Playgroud)
执行后必须是
ID : 1
FirstName: John
LastName : Brown
Run Code Online (Sandbox Code Playgroud) 在url中有xml文件:
<response>
<sum>0</sum>
<result>0</result>
<comment>sel*1.9488|buy*1.9453</comment>
</response>
Run Code Online (Sandbox Code Playgroud)
现在想要存储过程,我可以从url解析这个xml文件,并更新为列值,这<comment>sel*1.9488|buy*1.9453</comment>需要添加buy*1.9453到我的表.怎么样?
有这样的查询:
declare @tbl TABLE(name varchar(50), [par] varchar(50))
insert into @tbl(name,par)
values('a1','test1'),('a2','test2'),('a3','test3'),('a1','test11'),('a2','test22'),('a3','test33'),('a1','test111'),('a2','test222'),('a3','test333')
Run Code Online (Sandbox Code Playgroud)
此查询的结果是:
SELECT * FROM @tbl
name par
a1 test1
a2 test2
a3 test3
a1 test11
a2 test22
a3 test33
a1 test111
a2 test222
a3 test333
Run Code Online (Sandbox Code Playgroud)
如何写这样的选择查询?
a1 a2 a3
test1 test2 test3
test11 test22 test33
test111 test222 test333
Run Code Online (Sandbox Code Playgroud) 我在不同的主机上有2个mysql数据库,在将数据插入到另一个数据库之后需要触发器.我是mysql的新手,在sql server中我可以创建链接服务器并执行它.但是如何在mysql中做到?两个数据库都有类似的表
CREATE TABLE `tsttbl` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`age` smallint(6) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8
Run Code Online (Sandbox Code Playgroud) 有值的表
report nvarchar(max) not null
description nvarchar(max)
Run Code Online (Sandbox Code Playgroud)
在存储过程中,我想从表中选择值,然后将其转换为varbinary max.我seletct:
select
CONVERT(varbinary(max), [report]) as [report],
ISNULL(CONVERT(varbinary(max), [description]), '') as [description]
from myTbl
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:
不允许从数据类型varchar到varbinary(max)的隐式转换.使用CONVERT函数运行此查询.
请帮我解决这个问题
有更新我的表的存储过程:
UPDATE myTbl
SET [first_name] = @first_name,
[second_name] = @second_name,
[faculty] = @faculty,
[age] = @age
WHERE [id] = @id
Run Code Online (Sandbox Code Playgroud)
当我调用存储过程并传递所有更新的参数时.现在我想更新表,所以如果我没有输入要更新,更新的所有值,只有我介绍的那些,以及未引入的值保持不变.
让表用户拥有vallues:
FirstName LastName Age
A A 20
B B 21
C C 22
D D 21
E E 20
Run Code Online (Sandbox Code Playgroud)
有从这个表中选择值的程序,然后想要排序并插入另一个表,我这样做:
SELECT @firstName = FirstName ,lastName = LastName ,@age = Age FROM dbo.users
if @age = 20
insert into tbl1(FirstName,LastName) values (@firstName,@LastName )
if @age = 21
insert into tbl2(FirstName,LastName) values (@firstName,@LastName )
if @age = 22
insert into tbl3(FirstName,LastName) values (@firstName,@LastName )
Run Code Online (Sandbox Code Playgroud)
当我这样做时,所有行都不会插入表格,我认为需要循环或其他东西来做,有人可以帮助我吗?我想没有光标就做
例如有查询:
declare @date datetime = '2014-06-18'
SELECT CONVERT(varchar,@date,104)
Run Code Online (Sandbox Code Playgroud)
回复是:2014年6月18日,但我想要一个月没有零,它应该是这样的:18.6.2014是否有可能做到这样的事情?
我有想要将货币类型转换为十进制类型的存储过程.
@money = 513.9010 type money
我想把它转换成decimal- 怎么做?