当前位置:首页 » 操作系统 » 数据库返回语句

数据库返回语句

发布时间: 2022-07-18 07:35:05

数据库update语句的返回值是什么

更新成功返回受影响语句的id,失败返回false。

② 数据库语句返回记录不唯一,会出现什么现象

返回数据不唯一,就把符合sql语句条件的所有项都列出来。
查询语句不会只用于精确定位查找,还会有泛查找,比如符合每个条件的许多人,例如都是20岁的,或者都大于多少小于多少等等。
你问这个问题,表示你对SQL语句很不熟悉,只要你的语句是对的,你的数据库不要太庞大(如果你查询的范围太广,会耗费非常大的资源),就OK

③ 数据库中常用的sql语句有哪些

1.检索数据
SELECT prod_nameFROM Procts;
#检索单列

SELECT prod_id, prod_name, prod_priceFROMProcts;
#检索多列

SELECT * FROM Procts;
#检索所有列

SELECT DISTINCTvend_id FROMProcts;
#检索不同的值

SELECTprod_name FROM Procts LIMIT 5;
#返回不超过5行数据

SELECTprod_name FROM Procts LIMIT 5 OFFSET 5;
#返回从第5行起的5行数据。LIMIT指定返回的行数,LIMIT带的OFFSET指定从哪儿开始。
2.排序检索数据
SELECTprod_name
FROMProcts
ORDER BYprod_name;
#排序数据

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_price, prod_name;
#按多个列排序

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY 2, 3;
#按列位置排序,第三行表示先按prod_price, 再按prod_name进行排序

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_priceDESC, prod_name;
#prod_price列以降序排序,而prod_name列(在每个价格内)仍然按标准的升序排序

3.过滤数据
SELECT prod_name, prod_price
FROMProcts
WHERE prod_price< 10;
#检查单个值

SELECT prod_name, prod_price
FROMProcts
WHERE vend_id <> ‘DLL01’;
#不匹配检查

SELECT prod_name, prod_price
FROMProcts
WHERE prod_priceBETWEEN 5 AND 10;
#范围值检查

SELECT cust_name
FROMCUSTOMERS
WHERE cust_emailIS NULL;
#空值检查

4.高级数据过滤
SELECTprod_id, prod_price, prod_name
FROMProcts
WHERE vend_id = ‘DLL01’ANDprod_price <= 4;
#AND操作符

SELECTprod_name, prod_price
FROMProcts
WHEREvend_id=’DLL01’ OR vend_id=’BRS01’;
#OR操作符

SELECTprod_name, prod_price
FROMProcts
WHERE (vend_id = ’DLL01’ORvend_id=’BRS01’)
ANDprod_price >= 10;
#求值顺序 AND的优先级高于OR

SELECTprod_name, prod_price
FROMProcts
WHERE vend_idIN (‘DLL01’,’BRS01’)
ORDER BY prod_name;
#IN操作符

SELECT prod_name
FROMProcts
WHERE NOTvend_id = ‘DLL01’
ORDER BY prod_name;
#NOT 操作符

SELECT prod_name
FROMProcts
WHEREvend_id <> ‘DLL01’
ORDER BY prod_name;
#NOT 操作符

④ 常见的几个数据库insert into操作的主键返回值

插入一条记录时,我们很多时候都想马当前插入的主键返回出来.作为另一个操作的条件.如果主键是
自动生成的(大多数时候是这样),那么取回主键是一种比较困难的事.可能对于一些特殊的数据库必须把
insert into和select max(key)或什么序列当前值作为一个事务的原子来操作,但很多数据库(以及数据库操作环境)
并不能为你提供事务并发控制.所以如果多人同时操作,那么select max(key)很可能就不是你刚才insert的
那条记录.

在JDBC3.0中,已经可以直接返回insert 语句的主KEY和其它值,但目前只有mysql支持.oracl和sqlserver
的JDBC都不支持这个特性.而且如果离开java平台就没有这个特性了.

详细读了oacle,sqlserver,mysql的文档,对上面三种数据库找到了以下解决方案,在java和非java平台都适用:

SQLServer:

INSERT INTO tableName (fieldList ...) values (valueList ...) SELECT @@IDENTITY AS aliasName;

这一句相当于执行查询操作,从结果集中getXXX(aliasName);就可以获取.

Oracle:

INSERT INTO tableName (fieldList ...) values (valueList ...) RETURNING [primaryKey INTO]:aliasName;

同上的方法可以获取.这两种方法都是数据库支持的sql语句,原以根本不存在并发冲突.

mysql:
没有找到可以绝对保证原子性的语句(谁知道反馈一下)

如果是在JAVA平台,可以直接利用 Statement的返回键特性.比较安全,在非java平台上,目前只能通过在同一会话中用
LAST_INSERT_ID([columnName])来获取,注意一定要在同一会话中.

⑤ 数据库自定义函数,判断参数,生成不同的sql语句,返回数据

Return被定义为返回int.
当SType=21 @aaa存的是sql语句, 当然报错
当SType=22@aaa存的sql执行结果, Stock_id

php操作oracle数据库,如果返回select语句返回的行数

SELECT 语句用于从数据库中选取数据。
语句1:SELECT * FROM table_name
解说:意思就是读取整个表table_name里面的数据显示出来
语句1:SELECT * FROM table_name Where x = 1
解说:意思就是读取表table_name里面键名为:x 值为:1的 数据显示出来
例子:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
$result = mysql_query("SELECT * FROM Persons");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "<br />";
}
mysql_close($con);
?>

数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。
这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:
mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");

来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用:
mysql_query("SET NAMES UTF8"); 注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。
代码如下:
$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");

⑦ sql语句问题,如何从数据库中返回满足一定条件的表名,比如要返回以下划线开头的表名称,sql语句怎么写

oracle 数据库 ,返回A开头的表名称
select table_name from user_tables where table_name like 'A%'

⑧ 数据库查询的返回值问题

可以使用resultset.next()来判断是否查询到相应结果。resultset.next()的返回值是true或false,如果有结果返回true,没有结果则返回false
使用方法
if(resultset.next()){
执行相关语句...
}

⑨ 数据库函数如何返回一个值

一.
实现结果:在一个数据库中某个用户下编写一个存储过程,在存储过程中使用dblink连接另一个数据库,从此数据库中的一个用户下取数,然后插入当前的数据库中的一个表中。
二.
实现方法步骤:
1.
创建存储过程
2.
在存储过程中先创建database
link
3.
创建成功
4.
从另一个数据库取出数据插入到当前数据库中
5.
任务完成
三.
创建dblink的方法:
1.
create
public
database
link
dblink
connect
to
totalplant
identified
by
totalplant
using
'(description
=
(address_list
=
(address
=
(protocol
=
tcp)(host
=
localhost)(port
=
1521))
)
(connect_data
=
(service_name
=
prd.gdc)
)
)';
语法解释:create
public
database
link
dblink名字(自己随便起)
connect
to
用户名
identified
by
密码
using
'(description
=
(address_list
=
(address
=
(protocol
=
tcp)(host
=
要连接的数据库所在服务器的ip地址)(port
=
1521))
)
(connect_data
=
(service_name
=
要连接的数据库的在本地的服务名(即要连接的数据库的sid))
)
)';
2.
如果创建private的dblink
create
database
link
dblink
connect
to
totalplant
identified
by
totalplant
using
'(description
=
(address_list
=
(address
=
(protocol
=
tcp)(host
=
localhost)(port
=
1521))
)
(connect_data
=
(service_name
=
prd.gdc)
)
)';

⑩ 请教PHP数据库返回问题

观察了一下,应该是yii框架做的数据库操作。这里应该是保存数据,如果数据没发生变化,那么保存的数据结果不应该直接判断是true。应该采用!==false来判断。这个就是添加数据和修改数据的不同之处。这个文档里应该有说明,或者下次遇到这种问题,你可以查看下源码,看下模型保存的时候,是怎样返回的结果。如果是添加的话,就不会有这个问题,添加成功,返回的一定高杠杆true.而修改数据,不一定是返回true。

热点内容
怎样建立算法 发布:2025-01-21 12:12:14 浏览:838
凸包的graham算法 发布:2025-01-21 12:00:00 浏览:146
jsonobject转java对象 发布:2025-01-21 12:00:00 浏览:306
macpython3默认 发布:2025-01-21 11:58:26 浏览:261
芒果服务器是什么意思 发布:2025-01-21 11:57:54 浏览:40
微信聊天服务器错误什么意思 发布:2025-01-21 11:56:13 浏览:460
linuxtomcat不能访问 发布:2025-01-21 11:47:11 浏览:394
刷新器需要什么配置 发布:2025-01-21 11:09:28 浏览:972
jedis源码 发布:2025-01-21 11:08:24 浏览:890
edm数据库 发布:2025-01-21 11:05:54 浏览:371