<?php
class MyDB extends SQLite3
{
function __construct()
{
$this->open('test.db');
}
}
$db = new MyDB();
if(!$db){
echo $db->lastErrorMsg();
} else {
echo "Opened database successfully\n";
} /**
* 创建数据库
*/
$sql =<<<EOF
CREATE TABLE test2(
id integer PRIMARY KEY autoincrement,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
);
EOF;
$ret = $db->exec($sql);
if(!$ret){
echo $db->lastErrorMsg();
} else {
echo "Table created successfully\n";
}
$db->close(); /**
*数据入库
*/
$sql =<<<EOF
INSERT INTO test2 (NAME,AGE,ADDRESS,SALARY)
VALUES ('Paul', 32, 'California', 20000.00 );
EOF;
$ret = $db->exec($sql);
if(!$ret){
echo $db->lastErrorMsg();
} else {
echo "Records created successfully\n";
}
$db->close();

PHP SqlLite 类

<?php
/*
注意细节:实例化对象时传入的是数据库的路径,要是数据库不存在的话会自动创建。
*/
class sqlLite extends SQLite3{ /**
* 数据库路径设置
*/
public $url; /**
* SqlLite 创建数据库
*/
function __construct($url)
{
$this->url=$url;
$this->open($url);
} function check_input($value)
{
if (get_magic_quotes_gpc()) {
$value = sqlite_escape_string($value);
}
return $value;
} /**
* SqlLite 创建数据库
*
* create("test",
* array("id"=>"integer PRIMARY KEY autoincrement",
* "name"=>"VARCHAR(50)",
* "age"=>"INT NOT NULL",
* "article"=>"TEXT NOT NULL")
* );
*
* $name Array 请传递数组
* $type String 请传递|分割的字符串
*/
function create($table,$name,$type=null)
{
$sql = 'CREATE TABLE '.$table.'(';
if($type==null){
$arrname = array_keys($name);
$arrtype = array_values($name);
}else{
$arrname = explode("|", $name);
$arrtype = explode("|", $type);
}
for($i=0;$i<count($arrname);$i++){
if($i==count($arrname)-1){
$sql = $sql.$arrname[$i]." ".$arrtype[$i]."";
}else{
$sql = $sql.$arrname[$i]." ".$arrtype[$i].",";
} }
$sql = $sql.');';
$re = $this->query($sql);
if($re){
return true;
}else{
return false;
}
} /**
* SqlLite 删除数据库
*
* $table 表名
*/
function drop($table)
{
$sql = 'DROP TABLE '.$table.';';
$re = $this->query($sql);
if($re){
return true;
}else{
return false;
}
} /**
* SqlLite 插入数据
*/
function insert($table,$name,$value=null)
{
$sql = "INSERT INTO ".$table.'(';
if($value == null){
$arrname = array_keys($name);
$arrvalue = array_values($name);
}else{
$arrname = explode('|', $name);
$arrvalue = explode('|', $value);
}
for($i=0;$i<count($arrname);$i++){
if($i==count($arrname)-1){
$sql = $sql.$arrname[$i];
}else{
$sql = $sql.$arrname[$i].",";
}
}
$sql = $sql.")VALUES(";
for($i=0;$i<count($arrvalue);$i++){
if($i==count($arrvalue)-1){
$sql = $sql."'".$arrvalue[$i]."'";
}else{
$sql = $sql."'".$arrvalue[$i]."',";
}
}
$sql .=");";
$re = $this->query($sql);
if($re){
return true;
}else{
return false;
}
} /**
* SqlLite 删除数据
*/
function delete($table,$Conditionsname,$Conditionsvalue=null)
{
if($Conditionsvalue!=null){
$sql = "DELETE FROM ".$table." WHERE ".$Conditionsname."='".$Conditionsvalue."';";
}else{
$sql = "DELETE FROM ".$table." WHERE ";
$arrname = array_keys($Conditionsname);
$arrvalue = array_values($Conditionsname);
for($i=0;$i<count($arrname);$i++){
if($i==count($arrname)-1){
$sql.=$arrname[$i].'='."'".$arrvalue[$i]."'";
}else{
$sql.=$arrname[$i].'='."'".$arrvalue[$i]."',";
}
}
$sql.=';';
}
$re = $this->query($sql);
if($re){
return true;
}else{
return false;
}
} /**
* SqlLite 查询数据
*
* $table String 表名
* $name String 查询字段
* $Conditionsname 查询条件
*
* select("test","id,name,age,article",array("name"=>"张三"));
*/
function select($table,$name,$Conditionsname,$Conditionsvalue=null)
{
if($Conditionsvalue!=null){
$sql = "SELECT ".$name." FROM ".$table." WHERE ".$Conditionsname."='".$Conditionsvalue."';";
}else{
$sql = "SELECT ".$name." FROM ".$table." WHERE ";
$arrname = array_keys($Conditionsname);
$arrvalue = array_values($Conditionsname);
for($i=0;$i<count($arrname);$i++){
if($i==count($arrname)-1){
$sql.=$arrname[$i].'='."'".$arrvalue[$i]."'";
}else{
$sql.=$arrname[$i].'='."'".$arrvalue[$i]."' and ";
}
}
$sql.=';';
}
$ret = $this->query($sql);
$return = array();
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
array_push($return, $row);
}
return $return;
} /**
* SqlLite 更新数据
*
* $table String 表名
* $name String 修改的字段
* $value String 更新的值
* $Conditionsname 修改条件Array
*/
function update($table,$name,$value,$Conditionsname,$Conditionsvalue=null)
{
if($Conditionsvalue!=null){
$sql = "UPDATE ".$table." SET ".$name."= '".$value."' WHERE ".$Conditionsname."='".$Conditionsvalue."';";
}else{
$sql = "UPDATE ".$table." SET ".$name."= '".$value."' WHERE ";
$arrname = array_keys($Conditionsname);
$arrvalue = array_values($Conditionsname);
for($i=0;$i<count($arrname);$i++){
if($i==count($arrname)-1){
$sql.=$arrname[$i].'='."'".$arrvalue[$i]."'";
}else{
$sql.=$arrname[$i].'='."'".$arrvalue[$i]."' and ";
}
}
$sql.=';';
}
$re = $this->query($sql);
if($re){
return true;
}else{
return false;
}
} /**
* SqlLite 数据查询分组
*/
function group($table,$name){
$sql = "SELECT ".$name." FROM ".$table.";";
$return = array();
$ret = $this->query($sql);
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
array_push($return, $row[$name]);
}
return $return;
} /**
* SqlLite 数组对象转数组
*/
function fecthall($sql)
{
$return = array();
$ret = $this->query($sql);
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
array_push($return, $row);
}
return $return;
}
}

PHP创建SqlLite数据表并让ID自增的更多相关文章

  1. PHP创建数据库数据表

    PHP创建数据库数据表 <?php $con = mysql_connect('localhost', 'root', 'root'); /************************在数据 ...

  2. HBase 学习之一 <<HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行>>

    HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行                       ----首先感谢网络能够给我提供一个开放的学习平台,如果没有网上的技术爱好者提供 ...

  3. [SQL]SQL Server数据表的基础知识与增查删改

    SQL Server数据表的基础知识与增查删改 由张晨辉(学生) 于19天 前发表 | 阅读94次 一.常用数据类型 .整型:bigint.int.smallint.tinyint .小数:decim ...

  4. 第二百七十七节,MySQL数据库-数据表、以及列的增删改查

    MySQL数据库-数据表.以及列的增删改查 1.创建一个表 CREATE(创建) TABLE(表) ENGINE(引擎) ENGINE=INNODB(引擎)还有很多类引擎,这里只是简单的提一下INNO ...

  5. 数据库之mysql篇(3)—— mysql创建/修改数据表/操作表数据

    创建数据表:create table 数据表名 1.创建表规范 create table 表名( 列名   数据类型    是否为空   自动排序/默认值  主键/外键/唯一键, 列名   数据类型 ...

  6. SpringBoot-(8)-配置MySQL数据库链接,配置数据坚挺拦截,创建默认数据表

    一,链接mysql数据库 # 数据源基本配置 spring.datasource.username=root spring.datasource.password=123456 spring.data ...

  7. django 模块创建 同步数据表 使用方法

    1 配置数据库   100行左右 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 'NAME': 'student ...

  8. Django创建mysql数据表流程

    在Django项目建好后,在setting.py中设置好mysql连接参数: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysq ...

  9. 删除数据表中除id外其他字段相同的冗余信息

    删除一个信息表中除id外其他字段都相同的冗余信息,如下 id name addr 1 a b 2 a b 3 b c 删除这个表中的冗余信息 即应该是 id name addr 1 a b 3 b c ...

  10. Python 在已创建的数据表添加字段报错问题

    django.db.utils.IntegrityError: (1062, “Duplicate entry ’1234567891011’ for key_’dingdanid’”) 这个错误是之 ...

随机推荐

  1. c#控制台使用WebBrowser获取html问题

    在主线程上打上 [STAThread]标记就行 在main()最后一句  添加Application.Run();  就能使控制台像窗体一样持久运行而不是阻塞啥也不干 [STAThread]stati ...

  2. 【转】【进程管理】Linux进程调度:调度时机

    转自:https://zhuanlan.zhihu.com/p/163728119 概述: 进程切换分为自愿(voluntary)和强制(involuntary)两种.通常自愿切换是指任务由于等待某种 ...

  3. porps传参

    porps传参(最常用的 布尔传值)(基于前面的步骤进行修改) ①index.js //定义动态路由 props:trueconst routes =[ {path:"/user/:id/: ...

  4. SQL Network Interfaces, error: 50 - 发生了 Local Database Runtime 错误。无法创建自动实例

    1. sqllocaldb delete MSSQLLocalDB 2. sqllocaldb create

  5. Vue 解决先渲染 暂无数据

    // 组件 data(){ return { data:null // 设置默认值为null } } // template <div v-show="data != null&quo ...

  6. jQuery.extend 函数详解(转)

    地址:http://www.jb51.net/article/29591.htm JQuery的extend扩展方法: Jquery的扩展方法extend是我们在写插件的过程中常用的方法,该方法有一些 ...

  7. 《Unix/Linux系统编程》第八周学习笔记

    <Unix/Linux系统编程>第八周学习笔记 时钟服务函数 gettimeodfay() 获取系统时间 settimeofday() 设置系统时间 time() 以秒为单位返回当前时间 ...

  8. Nginx自带的变量

    $args #请求中的参数值$query_string #同 $args$arg_NAME #GET请求中NAME的值$is_args #如果请求中有参数,值为"?",否则为空字符 ...

  9. windows 查看 tcp 连接表

    netstat -ant|find /I "192.168.1.1" netstat -na -p tcp| findstr 80 | find "ESTABLISH&q ...

  10. Linux 截图快捷键 - 搬运

    Linux 截图快捷键 转自:linux 截图快捷键 环境 Linux Mint  21.1 1. Prt ScSysRq ---->全屏截图2. Shift+Prt ScSysRq ----& ...