A. 用sql语句操作和用后台代码操作哪个更可取,为什么
executeQuery是专门用于执行sql查询的方法,从你的sql来开不是查询,而是执行的见表和插入语句,这种操作应该使用executeUpdate方法,同时不要把见表语句和insert语句拼成一个整个的语句去执行,这种方式在数据库直接执行ok没问题,但通过代码走api调用是会出问题的,请使用sql批量执行
用PreparedStatement提供的addBatch()方法吧你要执行的sql一条条添加到批处理中,然后整个批量executeUpdate
此时executeUpdate返回的是int类型的数据,是当前sql执行之后影响到的数据库数据条数
B. 代码里sql语句数据库有数据,可代码执行没数据
boolean s = rs.next();
这句是多余的吧? 把第一条记录跳过了。
C. 【asp.net】后台写sql语句,如何把session语句传递进去
asp.net中使用ado.net访问数据库按照步骤实现。
查询语句中的参数使用SqlCommand 来处理
参考代码:
//从配置文件中读取数据库连接字符串
private readonly static string connString = ConfigurationManager.ConnectionStrings["accpConnectionString"].ToString();
// 构建选择的sql语句
string sql = "select * from lecture where teatId=@teatId";
using (SqlConnection conn = new SqlConnection(connString))
{
SqlCommand objCommand = new SqlCommand(sql, conn);
objCommand.Parameters.Add("@teatId", SqlDbType.Int).Value = teatId;
conn.Open();
......
}
}
D. 用C#后台代码计算时间好还是sql语句好
我一般用第一种,就是sql的
建议你要么都用第一种,要么都用第二种,这样不会因为服务器和数据库服务器时间差导致时间不一致
E. sql 语句大全
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_admpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- 开始 备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2… from tab_old definition only
5、说明:删除新表
drop table tabname
6、说明:增加一个列
Alter table tabname add column col type
注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键: Alter table tabname add primary key(col)
说明:删除主键: Alter table tabname drop primary key(col)
8、说明:创建索引:create [unique] index idxname on tabname(col….)
删除索引:drop index idxname
注:索引是不可更改的,想更改必须删除重新建。
9、说明:创建视图:create view viewname as select statement
删除视图:drop view viewname
10、说明:几个简单的基本的sql语句
选择:select * from table1 where 范围
插入:insert into table1(field1,field2) values(value1,value2)
删除:delete from table1 where 范围
更新:update table1 set field1=value1 where 范围
查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc]
总数:select count as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
11、说明:几个高级查询运算词
A: UNION 运算符
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。
B: EXCEPT 运算符
EXCEPT运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。
C: INTERSECT 运算符
INTERSECT运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。
注:使用运算词的几个查询结果行必须是一致的。
12、说明:使用外连接
A、left (outer) join:
左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
B:right (outer) join:
右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。
C:full/cross (outer) join:
全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。
12、分组:Group by:
一张表,一旦分组 完成后,查询后只能得到组相关的信息。
组相关的信息:(统计信息) count,sum,max,min,avg 分组的标准)
在SQLServer中分组时:不能以text,ntext,image类型的字段作为分组依据
在selecte统计函数中的字段,不能和普通的字段放在一起;
13、对数据库进行操作:
分离数据库: sp_detach_db;附加数据库:sp_attach_db 后接表明,附加需要完整的路径名
14.如何修改数据库的名称:
sp_renamedb 'old_name', 'new_name'
F. 系统开发,前端和后端一般分别都用哪些语言
解答:
1,前端:首先前端开发必须掌握三种基本语言:HTML,Css,Javascript;不管是asp.net还是php都需要前三者,数据没有好与不好之说,看所开发的系统的需要,但是sql语句不同数据库大同小异,所以数据库的话先把sql语句学好;
2,后端:学习后端可以学习PHP,Python,以及Java等语言,当然,你可以选择性的学习,而Python是学习后端必备的一种语言。
G. 后端如何避免太过复杂的sql查询
OLAP复杂是难免的,大规模实时分析最好还是传统数据库与大数据混合联动。通过像Kylin,Speak这些操作Hadoop来实时分析。OLTP出现超级复杂SQL,大多数都是设计的问题。数据结构乱设计+代码架构乱设计,混杂在一起的结果。数据结构设计最忌讳的,就是以性能的名义乱来冗余,不遵守范式,爬都爬不好,偏偏要跑。很多搞出来的所谓优化冗余,实际上只是拖累系统的垃圾。
H. 现在写那个sql代码是不是都要用存储过程,这样有什么好处
不需要每条sql都要用存储过程,存储过程有优点也有缺点的
优点:
* 存储过程的能力大大增强了SQL语言的功能和灵活性。存储过程可以用流控制语句编写,有很强的灵活性,可以完成复杂的判断和较复杂的 运算。
* 可保证数据的安全性和完整性。
* 在运行存储过程前,数据库已对其进行了语法和句法分析,并给出了优化执行方案。这种已经编译好的过程可极大地改善SQL语句的性能。由于执行SQL语句的大部分工作已经完成,所以存储过程能以极快的速度执行。
* 可以降低网络的通信量。
* 使体现企业规则的运算程序放入数据库服务器中,以便:
# 集中控制。
# 当企业规则发生变化时在服务器中改变存储过程即可,无须修改任何应用程序。
简单讲:
1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。
2.当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。
3.存储过程可以重复使用,可减少数据库开发人员的工作量
4.安全性高,可设定只有某些用户才具有对指定存储过程的使用权
缺点:
1:调试麻烦
2:移植问题,数据库端代码当然是与数据库相关的。但是如果是做工程型项目,基本不存在移植问题。
3:重新编译问题,因为后端代码是运行前编译的,如果带有引用关系的对象发生改变时,受影响的存储过程、包将需要重新编译。
4: 如果在一个程序系统中大量的使用存储过程,到程序交付使用的时候随着用户需求的增加会导致数据结构的变化,接着就是系统的相关问题了,最后如果用户想维护该系统可以说是很难很难、而且代价是空前的,维护起来更麻烦。
I. sql对于后端开发有多
从事web开发的后端来说,由于都需要与数据库进行数据交互所以sql语句非常重要。
J. 请问!后台执行SQL语句是什么意思新手!!急!!!!!!!!!!!
这是对于SQL SEVER而言的,当安装了SQL SEVER 2000以后,会有一个查询分析器,这是一个SQL命令本地执行工具,用它可以执行所有的数据库查询、分析、调试以及添加、删除、修改数据库等操作。可以用它来执行过能导出生成的SQL语句还在一两秒内可以建立整个数据库系统(其实这纯是一种复制).