Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Private Type GUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(7) As Byte
End Type
Private Type RASIPADDR
a As Byte
b As Byte
c As Byte
d As Byte
End Type
Private Type RASENTRY
dwSize As Long
dwfOptions As Long
dwCountryID As Long
dwCountryCode As Long
......
本文是PyQt4的入门教程。网上能搜到其它教程,但我觉得讲得不是很清楚,希望这篇文章对入门者更加有帮助。
先介绍一下PyQt4。Qt4图形库一经发布就好评不断,它在Python下的绑定PyQt4更是让我眼前一亮,不但漂亮,而且开发程序非常方便。
在我看来,PyQt4最大的改进之一是它不再拘泥与各种布局控件了,也就是说,现在写图形界面程序,和VB一样可以直接拖控件到窗口上并随便改变大小和位置了,不再像以前那样要先放上布局控件,再在布局控件里放其它控件。
对PyQt4的介绍就限于此,我也不准备把它与其它Python图形库进行比较了,因为经验表明这些东西的比较,特别是Qt与Gtk的比较总是会引起不必要的争吵。
IDE我使用Eric4。Eric4本身是用PyQt4写的,在使用Eric4时就能体会到用PyQt4能写出多棒的图形界面程序。Eric4的详细介绍与安装请见我的其它文章。
操作系统是Windows,在Linux下的操作完全一样。
寒喧结束,进入正题。假设我们要用Python写一个图形界面程序,一个对话框,里面两个button一个label。点击其中一个button能改变label的内容,点击另一个button就退出。
1. 新建工程。
打开Eric4,选择菜单Project->New新建一个工程,名字我们取为Hell ......
Imports System.Data.OleDb
Inherits System.Windows.Forms.Form
Dim myconnection As New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=" & Application.StartupPath & "\student0.mdb") ‘------------------------- 链接数据库
Dim mycommand As OleDbCommand
Dim mydatareader As OleDbDataReader
在别的事件中打开表
myconnection.Open()
mycommand = New OleDbCommand("SELECT * from 管理员表 where username='" & Trim(Txt_Username.Text) & "'and password='" & Trim(Txt_pwd.Text) & "'", myconnection)
mydatareader = mycommand.ExecuteReader() ......
Imports System.Data.OleDb
Inherits System.Windows.Forms.Form
Dim myconnection As New OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=" & Application.StartupPath & "\student0.mdb") ‘------------------------- 链接数据库
Dim mycommand As OleDbCommand
Dim mydatareader As OleDbDataReader
在别的事件中打开表
myconnection.Open()
mycommand = New OleDbCommand("SELECT * from 管理员表 where username='" & Trim(Txt_Username.Text) & "'and password='" & Trim(Txt_pwd.Text) & "'", myconnection)
mydatareader = mycommand.ExecuteReader() ......
create database db
use db
create table sampleTable
(
fId int identity(1,1) primary key,
fName varchar(10),
fGrade int,
)
select * from sampleTable
insert into sampleTable values ('张柏',69);
insert into sampleTable values ('李玉梅',100);
insert into sampleTable values ('李四',100);
--普通存储过程
create proc queryInfo
as
select * from sampleTable
go
drop proc queryInfo
exec queryInfo
--传入参数--
create proc idIn
@id int
as
select * from sampleTable where fid =@id
go
drop proc idIn
exec idIn 1
--传入参数--
create proc nameIn
@name varchar(10)
as
select * from sampleTable where fname =@name
go
exec nameIn '张柏'
--传入、传出参数--
create proc nameOut
@id int,
@name varchar(10) output
as
begin
select @name=fname from sampleTable where fid =@id
end
drop proc nameOut
declare @name varchar(10)
exec nameOut 1,@name output
select @name
--带通配符的参数
create proc qwnbcOut
@name varchar(10) =' ......
/*日期函数*/
DATEADD ( datepart , number, date )
--在向指定日期加上一段时间的基础上,返回新的 datetime 值。
DATEDIFF ( datepart , startdate , enddate )
--返回跨两个指定日期的日期和时间边界数。
DATENAME ( datepart , date )
--返回代表指定日期的指定日期部分的字符串。
DATEPART ( datepart , date )
--返回代表指定日期的指定日期部分的整数。
DAY ( date )
--返回代表指定日期的天的日期部分的整数。
GETDATE ( )
--按 datetime 值的 Microsoft? SQL Server? 标准内部格式返回当前系统日期和时间。
GETUTCDATE()
--返回表示当前 UTC 时间(世界时间坐标或格林尼治标准时间)的 datetime 值。
--当前的 UTC 时间得自当前的本地时间和运行 SQL Server 的计算机操作系统中的时区设置。
MONTH ( date )
--返回代表指定日期月份的整数。
YEAR ( date )
--返回表示指定日期中的年份的整数。
--------------------------------------------------------------------------
/*字符串处理函数*/
LCASE( )
LOWER( )
--将字符串转换为小写字母
LTRIM( )
--删除字符串前面的空格
SUBSTRING( )
--从字符串中提取一个或多个字符
UC ......
SQLSERVER存儲過程的寫法格式規格
*****************************************************
*** author:Susan
*** date:2005/08/05
*** expliation:如何寫存儲過程的格式及例子,有游標的用法!
*** 本版:SQL SERVER 版!
******************************************************/
在存儲過程中的格式規格:
CREATE PROCEDURE XXX
/*
列舉傳入參數
1:名稱,2:類型,包括長度
Eg:@strUNIT_CODE varCHAR(3)
*/
參數1,
參數2……………
As
/*
定義內部參數
1:名稱,2:類型,包括長度
Eg:@strUNIT_CODE varCHAR(3)
*/
Declare
參數1,
參數2……………
/*
初始化內部參數
Eg:SET @strUNIT_CODE=’’
*/
Set參數1的初始值
Set參數2的初始值…………
/*
過程的主內容 ......