sql删除数据总结
Delphi ADOQuery连接数据库的查询、插入、删除、修改
//查询记录procedure TForm1.Button1Click(Sender: TObject);beginADOQuery.Close;ADOQuery.SQL.Clear;ADOQuery.SQL.Add('select * from YourTABLE where 查询条件');ADOQuery.Open;//插入记录procedure TForm1.Button2Click(Sender: TObject);beginADOQuery.Close;ADOQuery.SQL.Clear;ADOQuery.SQL.Text:='insert into YourTABLE(字段1,字段2) values(:字段1,:字段2)';// ADOQuery.SQL.Add('insert into YourTABLE values(:字段1)');ADOQuery.Parameters.ParamByName('字段1').Value:=trim(Edit1.Text);ADOQuery.Parameters.ParamByName('字段2').Value:=trim(Edit2.Text);ADOQuery.ExecSQL;end;//删除记录procedure TForm1.Button3Click(Sender: TObject);beginADOQuery.Close;ADOQuery.SQL.Clear;ADOQuery.SQL.Text:='Delete from YourTABLE where 字段3=:字段3';//这里没有添加where的条件判断,实际使用时,注意添加判断// ADOQuery.SQL.Add('Delete from NEW_TABLE where 字段3=:字段3');ADOQuery.Parameters.ParamByName('字段3').Value:=trim(Edit3.Text);ADOQuery.ExecSQL;//删除记录也可用DeleteRecords()函数procedure DeleteRecords(AffectRecords: TAffectRecords = arAll); 这个函数有一个参数:AffectRecords可以取如下的值: 1、arCurrent :删除当前记录 2、arFiltered :删除符合Filter过滤后的所有记录(如果你使用Filter过滤的话) 3、arAll :删除所有记录 4、arAllChapters :Delete affects all chapters(ADO chapters)//修改记录procedure TForm1.Button4Click(Sender: TObject);beginADOQuery.Close;ADOQuery.SQL.Clear;ADOQuery.SQL.Text:='Update YourTABLE SET 字段4=:字段4';//这里没有添加where的条件判断,实际使用时,注意添加判断// ADOQuery.SQL.Add('Update YourTABLE SET 字段4=:字段4');ADOQuery.Parameters.ParamByName('字段4').Value:=trim(Edit4.Text);ADOQuery.ExecSQL;//即时更新插入、删除、修改后的记录在上面插入、删除、修改的语句后添加如下代码即可:ADOQuery.Close;ADOQuery.SQL.Add('select * from YourTABLE where 查询条件');ADOQuery.Open;//使用ADOQuery时注意: |
1、如果你需要更改数据,query.requestlive必须为true
2、如果有输入参数的时候,容易出错,通常的错法是这样:
比如:“WHERE abc = : abc”
改正如下:“WHERE abc=:abc”就是说=:前后都不能留空格。
3、ADOQuery.Open与ADOQuery.ExecSQL 有不同之处。
ADOQuery.Open一般用在查询,select时候;而ADOQuery.ExecSQL用在insert,delete,update等。
===========================================================
1、查询循环遍历数据
with adoquery1 do
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from 表名where 查询条件');
adoquery1.Open;
end;
遍历:
with adoquery1 do
begin
close;
sql.add('select * from 表名');
prepared;
open;
first;
while not eof do
begin
combobox1.items.add(fieldbyname('字段').asstring);
next;
end;
或者写成:
var
icount:integer;
icount:=adoquery1.recordcount;
for i:=1 to icount do
begin
combobox1.items.add(fieldbyname('字段').asstring);
next;
end;
或者是:
with adoquery1 do
begin
recordset.movefirst;
while not recordset.eof do
begin
combobox1.items.add(recordset.fields['字段'].value.asstring);
recordset.movenext;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add('select * from YourTABLE where 查询条件');
ADOQuery.Open;
end;
2、ADOQuery插入
with ADOQuery do
Close;
SQL.Clear;
SQL.Text:='insert into 表名(字段1,字段2) values(:字段1,:字段2)';
Parameters.ParamByName('字段1').Value:=trim(Edit1.Text);
Parameters.ParamByName('字段2').Value:=trim(Edit2.Text);
ExecSQL;
end
或者直接写成:
sql :='insert into 表 values(ID,loginn,username1,password1,quanxian14,quanxian2,remark)values ('+trim(Edit1.Text);+','+...(后面你自己补)ADOQuery1.SQL.Text := sql;
ADOQuery1.ExecSQL;
//插入记录
procedure TForm1.Button2Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Text:='insert into 表名(字段1,字段2) values(:字段1,:字段2)';
// ADOQuery.SQL.Add('insert into 表名 values(:字段1)');
ADOQuery.Parameters.ParamByName('字段1').Value:=trim(Edit1.Text);
ADOQuery.Parameters.ParamByName('字段2').Value:=trim(Edit2.Text);
ADOQuery.ExecSQL;
end;
3、删除
procedure TForm1.Button3Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Text:='Delete from 表名 where 字段3=:字段3';
//这里没有添加where的条件判断,实际使用时,注意添加判断
// ADOQuery.SQL.Add('Delete from 表名 where 字段3=:字段3');
ADOQuery.Parameters.ParamByName('字段3').Value:=trim(Edit3.Text);
ADOQuery.ExecSQL;
//删除记录也可用DeleteRecords()函数
procedure DeleteRecords(AffectRecords: TAffectRecords = arAll);
这个函数有一个参数:AffectRecords可以取如下的值:
1、arCurrent :删除当前记录
2、arFiltered :删除符合Filter过滤后的所有记录(如果你使用Filter过滤的话)
3、arAll :删除所有记录
4、arAllChapters :Delete affects all chapters(ADO chapters)
4、修改
procedure TForm1.Button4Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Text:='Update 表名 SET 字段4=:字段4';
//这里没有添加where的条件判断,实际使用时,注意添加判断
// ADOQuery.SQL.Add('Update 表名 SET 字段4=:字段4');
ADOQuery.Parameters.ParamByName('字段4').Value:=trim(Edit4.Text);
ADOQuery.ExecSQL;
5、即时更新插入、删除、修改后的记录
在上面插入、删除、修改的语句后添加如下代码即可:
ADOQuery.Close;
ADOQuery.SQL.Add('select * from 表名 where 查询条件');
ADOQuery.Open;
//使用ADOQuery时注意:
http://blog.csdn.net/draling/article/details/7875179
sql删除数据总结的更多相关文章
- [SQL]SQL删除数据的各种方式总结
SQL删除数据的各种方式总结 一.使用DELETE从表中删除目标行.记录每次删除操作.如: USE pubs DELETE FROM authors WHERE au_lname = 'McBadde ...
- SQL 删除数据 的所有用法
https://blog.51cto.com/13588598/2066335 1.使用 delete 语句删除表中的数据:语法:delete from <表名> [where <删 ...
- LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据
http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...
- 数据库(概念、语法、DBMS、SQL语言:创建数据库、表格,添加、修改、删除数据记录)
关系型数据库:以表作为实体,以主键和外键关系作为联系的一种数据结构. 主键:在关系型数据库中,用一个唯一的标识符来标志每一行,这个标识符就是主键.主键有两个特点:非空和不能重复. 外键:在关系型数据库 ...
- 数据分析---SQL(删除数据或表)
一.SQL中的语法 1.drop table 表名称 eg: drop table dbo.Sys_Test 2.truncate table 表 ...
- SQL 必知必会·笔记<14>更新和删除数据
1. 更新数据 基本的UPDATE语句,由三部分组成: 要更新的表 列名和它们的新值 确定要更新那些行的过滤条件 更新单列示例: UPDATE Customers SET cust_email = ' ...
- Sql Server删除数据表中重复记录 三种方法
本文介绍了Sql Server数据库中删除数据表中重复记录的方法. [项目]数据库中users表,包含u_name,u_pwd两个字段,其中u_name存在重复项,现在要实现把重复的项删除![分析]1 ...
- LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据 (转)
http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...
- sql server 笔记(数据类型/新建、修改、删除数据表/)
1.数据类型: Character 字符串 / Unicode 字符串 / Binary 类型 / Number 类型 / Date 类型 / 其他数据类型 详解:http://www.w3sc ...
随机推荐
- 如何运用xp_cmdshell 执行多行cmd命令
因为需要利用sql 脚本调用外部程序,所以尝试xp_cmdshell 命令,发现其默认只能执行一行命令,最后找到了下面方法: 将多行cmd 命令处理成bat文件,然后直接利用所在路径+文件来执行: ...
- JS 获取网页的宽高
网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: document.body.offsetWi ...
- Winform_devexpress开发框架主界面设计
做了好多年的C#开发,从.Net.Winform及第三方的DevExpress.无论什么样的系统,主界面的设计及风格无疑非常重要.从客户的角度考虑,要求功能区清晰,整体美观大方,这样才会有可能从第一视 ...
- CSS继承性+层叠性+盒子+浮动
CSS继承性+层叠性+盒子+浮动 CSS继承性 <style> div{ color: pink; font-siz ...
- Intellij Idea使用频率较高的几个快捷键
自动补全参数定义: Ctrl+Alt+V 运行断点Expression: Alt+F8 选择具体的方法以断点步入:Shift+F7 智能操作: Alt+Enter 打开最近文件:Ctrl+E 打开最近 ...
- Java 序列化 JDK序列化总结
Java 序列化 JDK序列化总结 @author ixenos Java序列化是在JDK 1.1中引入的,是Java内核的重要特性之一.Java序列化API允许我们将一个对象转换为流,并通过网络发送 ...
- ViewCompat.animate(view) 动画的操作
ViewCompat.animate(view) 实现动画的操作,动画兼容包; ViewCompat.animate(view) 实现动画的操作 .setDuration(200) .scaleX(0 ...
- 三大框架之hibernate的反转
选择工程.包名 Finish
- inception cenOS 安装
inception手册http://mysql-inception.github.io/inception-document/install/ 执行命令sh inception_build.sh,ce ...
- linux(centos7)下SVN服务器如何搭建
linux(centos)下SVN服务器如何搭建?说到SVN服务器,想必大家都知道,可以是在LINUX下如何搭建SVN服务器呢?那么今天给大家分享一下linux(centos)搭建SVN服务器的思路! ...