把数据插入到数据库的两种方法

原创 2003年03月07日 08:42:00

把表单中的数据插入到数据库中有两种方法。
1.直接使用sql语句的
    优点:速度快,不耗资源
    缺点:不能传递太长的字段内容,字段比较多时不易排错。
    推荐有经验的编程者优先考虑.

    具体操作:
       假设表单中有以下字段:username,password,sex,age
       对应的,在程序中有username,password,sex,age已取通过request.form或request.querystring取到字段的值。
       数据库表user中有username,password,sex,age字段。其它age为数字字段.
       已经建立connection对象,并打开链接.

        sql="insert into [user] (username,password,sex,age) value ('"&username&"','"&password&"','"&sex&"',"&age&")"
        conn.execute(sql)

        值得注意的是,如果username中含有“'”单引号,则会出错,解决方法是把字符串函数先经过处理.我常用的方法是建立一个sqlencode函数。
        function sqlencode(str)
             sqlencode="'"&replace(str,"'","''")&"'"
        end function

        这样上面的sql 语名在可以简化为sql="insert into [user] (username,password,sex,age) values ("&sqlencode(username)&","&sqlencode(password)&","&sqlencode(sex)&","&age&")"
        多字段时注意前面列表中的字段名和 values后面的值的顺序要注意一一对应关系,如果该值为空,可以不填写,但表示分隔的“,”号不能省略。
        加入的字段为字符串字段时要注意给内容前后加上"'"号。
        另外,在表名user上面打上方括号是因为user表可能是一个系统表,打上方括号才不会和系统有冲突。给表名加上方括也是保证代码的兼容性的一个良好习惯。

2.使用recordset对象
     优点:代码容易阅读,除错
     缺点:消耗系统资源
     推荐新手使用

     环境同上代码如下:

     set rs=Server.CreateObejct("ADODB.Recordset")
     sql="select * from [user]
     rs.open sql,conn,2,3
     rs.addnew                  '注意这一行为新加入一个记录,如果漏掉,就会改以前的记录了。
     rs("username")=username
     rs("password")=password
     rs("sex")=sex
     rs("age")=age
     rs.update          '将更新写入数据库中
     rs.close           '最快的关闭recordset对象是一种良好的习惯
     set rs=nothing     '将不用的对象释放也是一种良好的习惯

一次性把DataTable中的数据插入数据库

///    /// 初始化一个DataTable类型的数据源   /// Author : AnDequan   /// Date   : 2011-3-14   ///    /// S...
  • qq_30469045
  • qq_30469045
  • 2016年10月22日 22:02
  • 1836

把Excel中的数据插入到数据库中已经存在的表中

首先,创建一个表: create table aaa(name varchar(10),user_id varchar(20)); 然后插入数值: 注意要转换Excel中的数据类型 ...
  • diyoosjtu
  • diyoosjtu
  • 2012年05月16日 17:53
  • 1952

SQL 把一个数据库里面的某张表里的数据插入到另外一个数据库里面的一张表

SQL 把一个数据库里面的某张表里的数据插入到另外一个数据库里面的一张表,总结了2种方法:   1. 目标及源数据库在同一个DBMS上的情况;       insert into tab1 ...
  • fengqingtao2008
  • fengqingtao2008
  • 2015年07月20日 18:00
  • 6615

DataSet中的数据全部插入数据库

首先,用Select语句查询需要插入数据的表,用Top 1查一行就够了,这个是为了给SqlDataAdapter生成表的架构用的。string strSql = "Select * from Tabl...
  • wind19850922
  • wind19850922
  • 2009年12月25日 15:40
  • 1304

OpenXml应用:将Excel文件导入sql server数据库

需求 将Excel文件导入数据库 分析 Excel文件中有多个页签,每个页签中的列相同,页签名称做为分类,包含名称和编码,导入分类表,所有页签数据导入相同的表,每次数据总数变化不大,数量也不算多...
  • wangshiwei1105
  • wangshiwei1105
  • 2018年01月13日 11:52
  • 45

如何用一条语句把一张表的数据插入到另一张数据库表中

两个数据库名分别为:data1 和 data2,对应的表依次分别为:table1和table2。我想把data1里的table1的数据插入到data2里的table2,怎么写SQL语句? 情况一:d...
  • gaoshanwudi
  • gaoshanwudi
  • 2013年03月05日 10:50
  • 3284

关于如何将一个数据库中的表的数据插入另一个数据库中

现在所做的工作都是在一台我们公用的电脑上的oracle中,现在将那里面的一张表里的数据插入到我的计算机上的对应的数据表里。 首先,建立远程连接,创建db_link的格式: CREATE [PUBL...
  • freeideas
  • freeideas
  • 2015年01月12日 16:22
  • 2409

sqlite 数据库的创建以及单元测试插入、删除、更改数据库信息

//创建数据库 package com.liyulei.sqlite; import android.content.Context; import android.database.sqlit...
  • baidu_31863567
  • baidu_31863567
  • 2016年11月16日 14:01
  • 272

获取页面的数据 插入数据库中

控制器中的代码 public function postAddAqi() { $stid = Request::input("stid");//获取数据,不要忘记,引号中的是在.blade.p...
  • lois_123
  • lois_123
  • 2016年08月10日 08:22
  • 727

C#中添加数据到数据库

1.利用SQL语句添加  在SQL语句中提供了INSERT语句进行数据添加,其语法格式如下。 INSERT [Into] table_name[(column_list)] values (data_...
  • a769901686
  • a769901686
  • 2014年03月15日 16:03
  • 4099
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:把数据插入到数据库的两种方法
举报原因:
原因补充:

(最多只允许输入30个字)