大小:9.1MB更新时间:2021-02-22软件授权:国产软件
零空比特数据库代码类生成器(ZNBDBCodeGenerator)是一款基于PHP和aardio语言生成MySQL和SQLite
的类生成器。用于编程的目的。
零空比特数据库代码类生成器(ZNBDBCodeGenerator)功能特色
1)生成增删改查等操作。
2)易于使用。
3)使用方法:
(一)、对于SQLite用户
(1).所有的字段应该加上NotNull,非空。如下:
(2).应该加一个自增的主键:
(3).日期时间型的应该加上默认值:(datetime('now','localtime'))
(4).UUID全球统一编码默认值应该置为:(hex(randomblob(16)))
(5).对于使用我们的生成器(ZNB_DB_CodeGenerator)的用户,
(a).其日期时间型应该在aardio里设置成time.now();
(b).其UUID全球统一编码在aardio里设置成win.guid.create();
aardio中的SQLite代码使用方法如下:
importwin.ui;
importsqlite;
importweb.json;
importSQLiteDB;
importSQLiteDB.znb_UserAgents;
...
winform.btnStart.oncommand=function(id,event)
{
varsqlite_conn=sqlite("mySqlite.db");
var
znb_UserAgents_Tab=..SQLiteDB.znb_UserAgents.convertAs_znb_UserAgents_Tab({});
/**intellisense(!znb_UserAgents_Tab)
id_UserAgent=id_UserAgent
sUserAgent=sUserAgent
sMemo=sMemo
endintellisense**/
znb_UserAgents_Tab.sUserAgent="曾劲松";
znb_UserAgents_Tab.sMemo="asdfsadfas";
/*
varok,id,err=..SQLiteDB.znb_UserAgents.insert_znb_UserAgents(
sqlite_conn,znb_UserAgents_Tab);
..console.dump("ok:",ok);
..console.dump("id:",id);
..console.dump("err:",err);
*/
/*
ok:true
id:8
err:unknownerror
完成执行,已无数据
*/
znb_UserAgents_Tab.id_UserAgent=6;
znb_UserAgents_Tab.sUserAgent="www.znb.cc";
//update_znb_UserAgents(sqlite_conn,znb_UserAgents_Tab)=
//更新znb_UserAgents。返回数据库最近一次运行exec()所改变的行数iCount,和错误sError。
/*
variCount,err=..SQLiteDB.znb_UserAgents.update_znb_UserAgents(
sqlite_conn,znb_UserAgents_Tab);
*/
/*
..console.dump("iCount:",iCount);
..console.dump("err:",err);
iCount:1
err:
*/
var
znb_UserAgentsTab=..SQLiteDB.znb_UserAgents.select_where_znb_UserAgents(
sqlite_conn,"where[id_UserAgent]=3");
..console.dump("znb_UserAgentsTab:",
..web.json.stringify(znb_UserAgentsTab,true));
/*
znb_UserAgentsTab:[
{
"id_UserAgent":3,
"sMemo":"FireFox",
"sUserAgent":"Mozilla/5.0(WindowsNT6.1;Win64;x64;rv:84.0)
Gecko/20
100101Firefox/84.0"
}
]
*/
variCount,sError=..SQLiteDB.znb_UserAgents.delete_znb_UserAgents(
sqlite_conn,{6,7,8})
/*
..console.dump("iCount:",iCount);
..console.dump("sError:",sError);
iCount:3
sError:
*/
sqlite_conn.close();
}
(二)、对于MySQL用户
(1).所有的字段应该加上NotNull,非空。并且要输入注释(Comment)。如下:
(2).对于PHP:
a).date_default_timezone_set('PRC');//设置中华人民共和国标准时间;
b).对于日期时间字段,调用这个方法:date("Y-m-dH:i:s",time());
c).对于全球统一编码字段,调用父类的uuid()方法:
PHP中的代码使用方法:
//http://localhost/test/index.php
ini_set('display_errors','On');
error_reporting(E_ALL);
date_default_timezone_set('PRC');//设置中华人民共和国标准时间
//引用数据库文件。
include_once"codeGenerated/ZNB_include_classes.php";
echo"
";
$mysql_server_name='localhost:3306';//改成自己的mysql数据库服务器
$mysql_username='root';//改成自己的mysql数据库用户名
$mysql_password='root';//改成自己的mysql数据库密码
$mysql_database='test';//改成自己的mysql数据库名
$conn=mysqli_connect($mysql_server_name,$mysql_username,
$mysql_password,$mysql_database);//连接数据库
//连接数据库错误提示
if(mysqli_connect_errno($conn)){
die("连接MySQL失败:".mysqli_connect_error());
}
//数据库编码格式
mysqli_query($conn,"setnamesutf8");
$ZNBMySQLDBBase=newZNBMySQLDBBase($conn);
//单值查询。
print_r($ZNBMySQLDBBase-GetSingleValue("selectcount(*)from`user`").
'
');
$r=$ZNBMySQLDBBase-GetSingleValue("select`name`from`user`limit
1");
var_dump($r);
//写日志。
$ZNBMySQLDBBase-writeLog("www.znb.cc。零空比特。");
$znb_user=newznb_user($conn);
//查询一条
var_dump($znb_user-SelectSingle("where`id`=1"));//正确
//查询多条
var_dump($znb_user-SelectMultiple("where`id`=1"));//正确
//echo'uuid:'.$case-uuid()."
";//正确。uuid:d54a8437-e4f2-ffb3-0dcc-a2b0ac018138
$znb_user=newznb_user($conn);
$znb_user-id=4;
$znb_user-age=34;
$znb_user-birthDay="20000808";
$znb_user-creationTime=date("Y-m-dH:i:s",time());
$znb_user-name="曾劲松";
$znb_user-password="123'456";
$znb_user-uuid=$znb_user-uuid();
//var_dump($znb_user);//正确。
var_dump($znb_user-Update());//正确
//var_dump($znb_user-Insert());//正确
//echo"znb_user-Delete():".$znb_user-Delete();//正确
return;
//mysqli_set_charset($conn,"utf8");//设置默认客户端字符集。
//mysqli_select_db($conn,$mysql_database);//更改连接的默认数据库
//查询代码
$sql="select*from`case`";
print_r("sql:".$sql);
$mysqli_result=mysqli_query($conn,$sql);
print_r($mysqli_result);
mysqli_connect_error();
//$row=mysqli_fetch_array($mysqli_result,MYSQLI_ASSOC);
while($row=mysqli_fetch_array($mysqli_result,MYSQLI_ASSOC)){
echo$row['caseInfo'].'
';
}
//释放结果集
mysqli_free_result($mysqli_result);
//关闭MySQL数据库连接
mysqli_close($conn);
echo'www.znb.cc'."
";
echo"
";
?
aardio中的代码使用方法:
varmysql_client=mainForm.creatMySQLConnect();
if(mysql_client==null){return;}
//新增///////////////////////////////////////////////////////////
varznb_user_Tab=..MySQLDB.znb_user.convertAs_znb_user_Tab({});
znb_user_Tab.id=19;
znb_user_Tab.age=30;
znb_user_Tab.birthDay=..time();
znb_user_Tab.name="零空比特曾劲松";
znb_user_Tab.creationTime=..time();
znb_user_Tab.password="wasdf";
znb_user_Tab.uuid=tostring(win.guid.create());
varok,id,err=..MySQLDB.znb_user.insert_znb_user(
mysql_client,znb_user_Tab);
if(ok!=null)
{
mainForm.appendText("插入ok:"++tostring(ok)
++"id:"++id);
//■2020-08-2917:34:00插入ok:true
}
if(err!=null)
{mainForm.appendText("插入错误:",err);}
//==================================================
//更新//////////////////////////////////////////////
znb_user_Tab.name="零空比特zjs";
znb_user_Tab.birthDay=..time();
znb_user_Tab.creationTime=..time();
varok,iAffectedRows,err=..MySQLDB.znb_user.update_znb_user(
mysql_client,znb_user_Tab);
if(ok!=null)
{
mainForm.appendText("更新ok:"++tostring(ok));
mainForm.appendText("更新记录数:"++tostring(iAffectedRows));
}
if(err!=null)
{mainForm.appendText("更新错误:",err);}
//==================================================
//选择////////////////////////////////////////////////
varznb_user_Tabs,result=..MySQLDB.znb_user.select_where_znb_user(
mysql_client,"whereid10");
mainForm.appendText("选择id10:"++..table.tostring(znb_user_Tabs));
/*
■2020-08-2920:52:21选择id10:{
[1]={birthDay="2020-08-28";name="zzz";id=11;creationTime="2020-08-28
20:38:41";age=20;uuid="DDD3A6CF-E61C-4F9C-AD05-4AC5B083A69B"};
[2]={birthDay="2020-08-29";name="零空比特zjs";id=12;creationTime="2020-08-29
20:08:13";age=30;uuid="1A6A10DA-7977-4101-BB75-0AF674A3927A"};
[3]={birthDay="2020-08-29";name="zzz";id=13;creationTime="2020-08-29
16:06:03";age=20;uuid="BF438EA1-B067-439A-8A52-70A560BDB614"};
[4]={birthDay="2020-08-29";name="零空比特曾劲松";id=14;creationTime="2020-08-29
17:33:44";age=30;uuid="3E4C2E88-85C6-482A-B651-1AFBA0A79E77"};
[5]={birthDay="2020-08-29";name="零空比特曾劲松";id=15;creationTime="2020-08-29
17:33:47";age=30;uuid="F641709D-A5F6-4221-A523-8A5B15602CDF"};
[6]={birthDay="2020-08-29";name="零空比特曾劲松";id=16;creationTime="2020-08-29
17:34:00";age=30;uuid="1BF32A13-A972-44CA-9F83-A973219A23D2"};
[7]={birthDay="2020-08-29";name="零空比特曾劲松";id=17;creationTime="2020-08-29
19:35:50";age=30;uuid="B209D480-D503-444A-B24F-EEF6D7D4207E"};
[8]={birthDay="2020-08-29";name="零空比特曾劲松";id=18;creationTime="2020-08-29
20:08:10";age=30;uuid="E522436F-5CAA-4A9D-BD7D-05C5CBA5F849"};
[9]={birthDay="2020-08-29";name="零空比特zjs";id=19;creationTime="2020-08-29
20:52:21";age=30;uuid="2459990A-D08A-4697-BBFD-8797BA8D9461"}
}
*/
//===================================================
//根据条数删除////////////////////////////////////////
var
ok,iAffectedRows,err=..MySQLDB.znb_user.delete_znb_user(mysql_client,{17;18;19});
mainForm.appendText("根据条数删除iAffectedRows:"++iAffectedRows);
//■2020-08-2921:22:46根据条数删除iAffectedRows:2
//■2020-08-2921:23:25根据条数删除iAffectedRows:0
//=====================================================
//删除where/////////////////////////////////////////
varok,iAffectedRows,err=..MySQLDB.znb_user.delete_where_znb_user(
mysql_client,"where`id`=15");
mainForm.appendText("根据条件删除iAffectedRows:"++iAffectedRows);
//■2020-08-3008:36:59根据条件删除iAffectedRows:1
//====================================================
var
znb_user_view_Tab=..MySQLDB.znb_user_view.convertAs_znb_user_view_Tab({});
znb_user_view_Tab.id=1;
var
znb_user_view_Tabs,result=..MySQLDB.znb_user_view.select_where_znb_user_view(
mysql_client,"");
mainForm.appendText("znb_user_view_Tabs:"++
..table.tostring(znb_user_view_Tabs));
//■2020-08-3111:35:47
znb_user_view_Tabs:{[1]={id=1;PASSWORD="123456";NAME="zjs"}}
mysql_client.close();
零空比特数据库代码类生成器(ZNBDBCodeGenerator)更新日志
√20210206发布1.3版本,主要功能为aardio生成SQLite类代码。
√20200923发布1.2版本,主要功能为aardio生成MySQL类代码。
√20200825发布1.1版本,调试错误。
√20200815发布1.0版本,主要功能为PHP生成MySQL类代码。
华军小编推荐:
零空比特数据库代码类生成器(ZNBDBCodeGenerator)能够帮助你解决很多问题,相信只要你敢用,绝对会让你爱不释手的,还推荐给您{recommendWords}