sqlite入门练习,通讯录增删改查
选择了sqlite作为sql语言入门练习的数据库,因而也选择了同样轻便的编程工具AAuto,其封装了sqlite库,方便好用且很快写出一个带界面的小工具,有兴趣的OSC友只需到官网下载快手开发工具,解压缩,新建工程运行以下代码即可看到效果。 透过编写这个工具了解及
选择了sqlite作为sql语言入门练习的数据库, 因而也选择了同样轻便的编程工具AAuto ,其封装了sqlite 库,方便好用且很快写出一个带界面的小工具 ,有兴趣的OSC友只需到官网下载快手开发工具,解压缩,新建工程运行以下代码即可看到效果。
透过编写这个工具了解及学习了以下知识:
1.sql基本语言, sqlite数据库创建、数据增加、修改、删除及模糊查询,命名参数运用。
2.列表视图listview控件的简单操作运用。
3.windows控件、窗体的命令响应、通知,消息循环等知识。
4.aauto的编程语言的数据类型、名字空间等特点。
SQLite AAuto Quicker
import win.ui; import crreaDb; /*DSG{{*/ var winform = ..win.form(text="快手通讯录 by 菲菲OSC";right=558;bottom=427;parent=...) winform.add( button={cls="button";text="添加记录";left=19;top=19;right=100;bottom=48;z=1}; button2={cls="button";text="编辑记录";left=115;top=19;right=196;bottom=48;z=2}; button3={cls="button";text="删除记录";left=211;top=19;right=292;bottom=48;z=3}; button4={cls="button";text="查找";left=476;top=22;right=536;bottom=48;z=5}; dress={cls="edit";left=375;top=152;right=541;bottom=176;edge=1;z=9}; edit={cls="edit";text="输入查找条件...";left=318;top=21;right=457;bottom=48;edge=1;z=4}; emal={cls="edit";left=375;top=193;right=541;bottom=217;edge=1;z=10}; listview={cls="listview";left=19;top=69;right=292;bottom=408;bgcolor=16777215;edge=1;fullRow=1;z=6}; mark={cls="richedit";text="备注";left=313;top=280;right=543;bottom=408;edge=1;hscroll=1;multiline=1;vscroll=1;z=17}; name={cls="edit";left=375;top=71;right=541;bottom=95;edge=1;z=7}; qq={cls="edit";left=375;top=234;right=541;bottom=258;edge=1;z=11}; static={cls="static";text="姓名";left=319;top=69;right=359;bottom=93;transparent=1;z=12}; static2={cls="static";text="电话";left=319;top=110;right=359;bottom=134;transparent=1;z=13}; static3={cls="static";text="地址";left=319;top=152;right=359;bottom=176;transparent=1;z=14}; static4={cls="static";text="邮箱";left=319;top=193;right=359;bottom=217;transparent=1;z=15}; static5={cls="static";text="QQ/MSN";left=319;top=234;right=359;bottom=258;transparent=1;z=16}; tel={cls="edit";left=375;top=112;right=541;bottom=136;edge=1;z=8} ) /*}}*/ var sqlConnection = sqlite("\res\contact.db") crreaDb.careaTable(sqlConnection) // 显示数据 var showData = function(sql){ for id,姓名,电话, 地址,邮箱,QQ ,备注 in sqlConnection.each("select rowid,* from tl") { winform.listview.addItem({tostring(id);姓名;电话; 地址;邮箱;QQ;备注}) } } winform.listview.insertColumn("id",1) winform.listview.insertColumn("姓名",100) winform.listview.insertColumn("电话",100) winform.listview.insertColumn("地址",120) winform.listview.insertColumn("邮箱",120) winform.listview.insertColumn("QQ",80) winform.listview.insertColumn("备注",150) showData() winform.show() winform.button.oncommand = function(id,event){ // 添加 var name = winform.name.text var tel = winform.tel.text var dress = winform.dress.text var em = winform.emal.text var qq = winform.qq.text var mark = winform.mark.text crreaDb.addData(sqlConnection,name,tel,dress,em,qq,mark) id = sqlConnection.lastInsertRowid() var data = sqlConnection.stepQuery("select rowid,* from [tl] where rowid = "+id) winform.listview.addItem({tostring(data.id);data.name;data.tel;data.dress;data.em;data.qq;data.mark}) } winform.button3.oncommand = function(id,event){ // 删除 var coun = winform.listview.selIndex var id = winform.listview.getItemText(coun) if(id){ crreaDb.delData(sqlConnection,id) winform.listview.clear() showData() winform.listview.selIndex = coun } else { winform.msgbox("请选择要删除的列") } } winform.button2.oncommand = function(id,event){ // 编辑修改 crreaDb.editData(sqlConnection,name,tel,dress,em,qq,mark,id) } winform.button4.oncommand = function(id,event){ // 查询 var vv = winform.edit.text var id = crreaDb.inQuiry(sqlConnection,vv) winform.listview.clear() if(id){ for(i=1;#id;1){ winform.listview.addItem({tostring(id[i].rowid);id[i].name;id[i].tel; id[i].dress;id[i].em;id[i].qq;id[i].mark}) } } else { winform.msgbox("找不到记录") } } winform.edit.wndproc = function(hwnd,message,wParam,lParam){ if( message = 0x202/*_WM_LBUTTONUP*/ ) winform.edit.text = "" } winform.listview.onnotify = function(id,code,ptr){ select(code) { case 0xFFFFFF9B/*_LVN_ITEMCHANGED*/ { if(winform.listview.selIndex){ var lvw = winform.listview winform.name.text = lvw.getItemText(lvw.selIndex,2) winform.tel.text = lvw.getItemText(lvw.selIndex,3) winform.dress.text = lvw.getItemText(lvw.selIndex,4) winform.emal.text = lvw.getItemText(lvw.selIndex,5) winform.qq.text = lvw.getItemText(lvw.selIndex,6) winform.mark.tex = lvw.getItemText(lvw.selIndex,7) } } } } win.loopMessage(); sqlConnection.exec("VACUUM") sqlConnection.close() return winform;
namespace crreaDb; import sqlite; careaTable = function(db){ if( not db.existsTable("tl") ){ //创建表 db.exec( "create table tl( name, tel , dress, em, qq , mark );" ) } } // 添加数据 addData = function(db,name,tell,dress,em,qq,mark){ var command = db.prepare("insert into [tl] values ( @name,@tel,@dress,@em,@qq,@mark );" ) command.bind.parameterAtNames( name = name; tel = tell; dress = dress; em = em; qq = qq; mark = mark ).step() command.finalize() } // 删除 delData = function(db,id){ db.exec("DELETE FROM [%s] where rowid=%d;","tl",id) } // 修改 editData = function(db,name,tel,dress,em,qq,mark,id){ db.exec("UPDATE [tl] SET name = @name,tel=@te1 ,dress=@dress,em=@em,QQ=@qq,mark=@mark WHERE rowid = @id;",{ name = name; tel = tel; dress = dress; em = em; qq = qq; mark = mark; id = id }); } // 模糊查询 inQuiry = function(db,re){ var tab = db.getTable("select rowid,* from [tl] where ifnull(name,'') || ifnull(tel,'') || ifnull(QQ,'') like '%"+ re+ "%'") return tab }

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











拡散はより良いものを模倣するだけでなく、「創造」することもできます。拡散モデル(DiffusionModel)は、画像生成モデルである。 AI 分野でよく知られている GAN や VAE などのアルゴリズムと比較すると、拡散モデルは異なるアプローチを採用しており、その主な考え方は、最初に画像にノイズを追加し、その後徐々にノイズを除去するプロセスです。ノイズを除去して元の画像を復元する方法は、アルゴリズムの中核部分です。最後のアルゴリズムは、ランダムなノイズを含む画像から画像を生成できます。近年、生成 AI の驚異的な成長により、テキストから画像への生成、ビデオ生成など、多くのエキサイティングなアプリケーションが可能になりました。これらの生成ツールの背後にある基本原理は、以前の方法の制限を克服する特別なサンプリング メカニズムである拡散の概念です。

キミ: たった 1 文の PPT がわずか 10 秒で完成します。 PPTはとても面倒です!会議を開催するには PPT が必要であり、週次報告書を作成するには PPT が必要であり、投資を勧誘するには PPT を提示する必要があり、不正行為を告発するには PPT を送信する必要があります。大学は、PPT 専攻を勉強するようなものです。授業中に PPT を見て、授業後に PPT を行います。おそらく、デニス オースティンが 37 年前に PPT を発明したとき、PPT がこれほど普及する日が来るとは予想していなかったでしょう。 PPT 作成の大変な経験を話すと涙が出ます。 「20 ページを超える PPT を作成するのに 3 か月かかり、何十回も修正しました。PPT を見ると吐きそうになりました。」 「ピーク時には 1 日に 5 枚の PPT を作成し、息をすることさえありました。」 PPTでした。」 即席の会議をするなら、そうすべきです

壁紙はファミリー共有をサポートしていますか? 残念ながら、サポートされていません。それでも、解決策はあります。たとえば、小さいアカウントで購入したり、最初に大きいアカウントでソフトウェアや壁紙をダウンロードしてから小さいアカウントに変更したりすることができます。ソフトウェアを起動するだけでまったく問題ありません。壁紙エンジンはファミリー共有できますか? 回答: 現在、壁紙はファミリー共有機能をサポートしていません。 1.WallpaperEngine は家族共有環境には適していないようです。 2. この問題を解決するには、新しいアカウントの購入を検討することをお勧めします; 3. または、最初にメインアカウントで必要なソフトウェアと壁紙をダウンロードしてから、他のアカウントに切り替えることをお勧めします。 4. 軽くクリックしてソフトウェアを開くだけで問題ありません。 5. 上記の Web ページでプロパティを表示できます。」

WallpaperEngine は、デスクトップの壁紙を設定するためによく使用されるソフトウェアです。ユーザーは、WallpaperEngine でお気に入りの写真を検索して、デスクトップの壁紙を生成できます。また、コンピュータから写真を WallpaperEngine に追加して、コンピュータの壁紙として設定することもできます。壁紙エンジンがロック画面の壁紙を設定する方法を見てみましょう。壁紙エンジン設定ロック画面の壁紙チュートリアル 1. まずソフトウェアに入り、インストール済みを選択し、「壁紙オプションの設定」をクリックします。 2. 別の設定で壁紙を選択した後、右下の「OK」をクリックする必要があります。 3. 次に、上の設定とプレビューをクリックします。 4. 次へ

WallpaperEngine を使用すると、さまざまな壁紙をダウンロードでき、ダイナミック壁紙も使用できます。WallpaperEngine で動画を視聴するときにウイルスに感染しているかどうかわからないユーザーも多くいますが、動画ファイルがウイルスとして使用されることはありません。壁紙エンジンで映画を見るときにウイルスはありますか? 答え: いいえ。 1. 動画ファイルだけではウイルスとして利用できません。 2. ウイルス感染のリスクを避けるために、信頼できるソースからビデオをダウンロードし、コンピュータのセキュリティ対策を維持するようにしてください。 3. アプリケーションの壁紙は apk 形式であり、apk にはトロイの木馬ウイルスが含まれている可能性があります。 4.WallpaperEngine自体にはウイルスはありませんが、クリエイティブワークショップの一部のアプリケーション壁紙にはウイルスが感染している可能性があります。

最近では、多くの友人が Kingsoft Typing Assistant を使用することを好みますが、タイピング速度は作業効率に大きく影響しますので、私はタイピング速度を練習することを教えます。それでは、Kingsoft Typing Assistant を使用してタイピングを練習する方法を教えてください。今日は、エディターが次のチュートリアルを提供します。 Kingsoft Typing Assistant を使って数字を入力する練習方法を以下に説明しますので、皆様のお役に立てれば幸いです。まず、Kingsoft タイピング ソフトウェアを開き、マウスで (はじめに) ボタンをクリックし、新しいウィンドウで (数字キー) ボタンをクリックしてから、下の (ゼロから始める) ボタンをクリックして練習するか、(テスト モード) ボタン。数字を入力するだけで練習できます。さらに、Kingsoft タイピング アシスタントには、タイピングの練習に役立つその他の機能もあります。 1. 練習モードを選択します。ソフトウェア インターフェイスでは、「新規」などのさまざまな練習モードがあることがわかります。

壁紙の購読記録を確認するにはどうすればよいですか? 多くのユーザーはこのソフトウェアで多数の購読を行っていますが、これらの記録を照会する方法がわからないかもしれません。実際には、ソフトウェアのブラウジング機能領域で操作するだけで済みます。壁紙エンジンのサブスクリプション レコードはどこにありますか? 回答: ブラウジング インターフェイス内です。 1. まずコンピュータを起動し、壁紙ソフトウェアを入力してください。 2. アプリケーションの左上隅にある「参照」タブのアイコンを見つけてクリックします。 3. 「参照」インターフェースでは、さまざまな壁紙とフィードの概要が表示されます。 4. 右上隅の検索ボックスに検索したいキーワードを入力します。 5. 検索結果に基づいて、壁紙のサブスクリプションのソース情報を見つけることができます。 6. 対応するフィードをクリックして、その Web ページにアクセスします。 7. 注文

壁紙を利用する場合、ユーザーは自分の好みの壁紙をダウンロードして利用することができますが、その壁紙がどのフォルダーにあるのか分からないユーザーも多くいます。壁紙はどのフォルダにありますか? 答え: コンテンツ フォルダです。 1. ファイルエクスプローラーを開きます。 2. 左側の「このPC」をクリックします。 3.「STEAM」フォルダーを見つけます。 4.「steamapps」を選択します。 5.「ワークショップ」をクリックします。 6. 「コンテンツ」フォルダーを見つけます。
