スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--.--.-- | | スポンサー広告

仕事メモ(補足)

コンボボックスのRecordSet時の

LockTypeは

adLockOptimistic → adLockReadOnly

にしておかないとJOIN使用時にエラーで引っかかります

スポンサーサイト

2013.06.03 | | Comments(0) | Trackback(0) | メモ

仕事メモ(レポート)

ACCDBではレポートをRecordSetで設定することができないのでストアドをそのまま使うことができません。
なのでクエリを作成する方法で~

Dim qdf As QueryDef
Dim ItemQdf As QueryDef
Dim mysql As String

Const QueryName = "クエリ名"
Const StrCON = "ODBC;DRIVER=SQL Server;SERVER=[サーバー名];UID=sa;PWD=;WSID=anywsid;DATABASE=[データベース名]"

mysql = "SELECT文(ストアドのSELECT文をここで記入)"

For Each ItemQdf In CurrentDb.QueryDefs
If ItemQdf.Name = QueryName Then
CurrentDb.QueryDefs.Delete QueryName
Exit For
End If
Next

Set qdf = CurrentDb.CreateQueryDef(QueryName)
qdf.Connect = StrCON
qdf.ReturnsRecords = True
qdf.SQL = mysql
qdf.Close
Set qdf = Nothing

これでクエリができるのでレポートのRecordSourceにクエリを指定して完成

2013.05.24 | | Comments(0) | Trackback(0) | メモ

仕事メモ(Access+SQL-Server)追加2

コンボボックスのRecordSet

Dim SQLcn As ADODB.Connection
Dim RS As New ADODB.Recordset
Dim cmd As New ADODB.Command
Dim mysql As String

SQLcn.ConnectionString = "PROVIDER=SQLOLEDB;UID=[ユーザー名];PWD=[パスワード];Data Source=[サーバー名];Initial Catalog=[データベース名]"
SQLcn.Open

mysql = "SELECT [項目] FROM [テーブル名] WHERE [条件]"
Set cmd.ActiveConnection = SQLcn
cmd.CommandText = mysql
cmd.CommandType = adCmdText

Set RS = Nothing
RS.CursorLocation = adUseClient
RS.Open Source:=cmd, CursorType:=adOpenStatic, LockType:=adLockOptimistic
Set Me.[コンボボックス名].Recordset = RS


サブフォームのRecordSet(サブフォームのOPEN時)

Dim SQLcn As ADODB.Connection
Dim RS As New ADODB.Recordset
Dim cmd As New ADODB.Command
Dim mysql As String

SQLcn.ConnectionString = "PROVIDER=SQLOLEDB;UID=[ユーザー名];PWD=[パスワード];Data Source=[サーバー名];Initial Catalog=[データベース名]"
SQLcn.Open

mysql = "SELECT [項目] FROM [テーブル名] WHERE [条件]"
Set cmd.ActiveConnection = SQLcn
cmd.CommandText = mysql
cmd.CommandType = adCmdText

RS.CursorLocation = adUseClient
RS.Open Source:=cmd, CursorType:=adOpenKeyset, LockType:=adLockOptimistic
Set Me.Recordset = RS
Me.UniqueTable = "[更新テーブル名]"

2013.04.26 | | Comments(0) | Trackback(0) | メモ

仕事メモ(Access+SQL-Server)追加

フォームのレコードセットにストアドを使う方法

Private Sub Form_Open(Cancel As Integer)

Dim cn As ADODB.Connection
Dim rs As New ADODB.Recordset
Dim cmd As New ADODB.Command

Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=SQLOLEDB;User ID=[ユーザー名];Password=[パスワード];Data Source=[サーバー名];Initial Catalog=[データベース名]"
cn.Open

With cmd
.ActiveConnection = cn
.CommandText = "[ストアドプロシージャ名]"
.CommandType = adCmdStoredProc
.CommandTimeout = 15
End With

rs.Open Source:=cmd, CursorType:=adOpenStatic, LockType:=adLockReadOnly

Set Me.Recordset = rs
Set rs = Nothing
Set cn = Nothing

End Sub

2012.07.27 | | Comments(0) | Trackback(0) | メモ

仕事メモ(ACCESS+SQL-SERVER)

ストアドがレコードセットを返さない時の対処

ストアドの中にINSERT、UPDATEがあるとレコードセットが返らないのでSET NOCOUNTを使う

SET NOCOUNT ON;
INSERT文もしくはUPDATE文;
SET NOCOUNT OFF;

※MSDNでの説明
SET NOCOUNT が ON の場合は行数は返されません。 SET NOCOUNT が OFF の場合は行数が返されます。
SET NOCOUNT が ON の場合でも、@@ROWCOUNT 関数は更新されます。
SET NOCOUNT ON を指定すると、ストアド プロシージャ内の各ステートメントに対する DONE_IN_PROC メッセージは、クライアントに送信されなくなります。 このため、実際に返すデータが少量のステートメントで構成されるストアド プロシージャ、または Transact-SQL ループを含むプロシージャの場合、ネットワーク通信量が大きく減少するので、SET NOCOUNT を ON に設定するとパフォーマンスが大きく向上します。
SET NOCOUNT で指定される設定は、解析時ではなく実行時に有効になります。

2012.07.27 | | Comments(0) | Trackback(0) | メモ

«  | HOME |  »

プロフィール

ヤーン

Author:ヤーン
ギルドウォーズでちまちま遊んでます。
ネタが出来たらなんか書くはずです(ぇ
最近はROHANがメインに・・・・

カレンダー

09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

ブログ内検索

FC2カウンター

著作権等

Guild Warsの画像に関する著作権
2005-2006 © Copyright ArenaNet Inc. and NCsoft Corporation. All Rights Reserved. Guild Wars and all associated Guild Wars logos and designs are trademarks of NCsoft Corporation. NCsoft, the interlocking NC logo, and all associated NCsoft logos and designs are trademarks or registered trademarks of NCsoft Corporation.NC Japan K.K. was granted by NCsoft Corporation the right to publish, distribute, and transmit Guild Wars in Japan.

Tower of AIONの画像に関する著作権
The Tower of AION(TM) is a trademark of NCsoft Corporation. Copyright (c) 2009 NCsoft Corporation. NC Japan K.K. was granted by NCsoft Corporation the right to publish, distribute and transmit The Tower of AION(TM) in Japan. All rights reserved.

R.O.H.A.Nの画像に関する著作権
(c) 2009 ROHAN by YNK JAPAN Inc. All Rights Reserved. (c) 2005-2009 ROHAN by YNK GAMES Inc. All Rights Reserved


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。