AccessVBA/SQL¥¹¥Æ¡¼¥È¥á¥ó¥È¤ò»È¤Ã¤¿¥Ç¡¼¥¿¥Ù¡¼¥¹Áàºî

SQL¥¹¥Æ¡¼¥È¥á¥ó¥È¤ò»È¤Ã¤¿¥Ç¡¼¥¿¥Ù¡¼¥¹Áàºî

¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ëÊýË¡

ÁªÂò¥¯¥¨¥ê¤Î¼Â¹Ô·ë²Ì¤Ï¡¢Recordset¥ª¥Ö¥¸¥§¥¯¥È¤ÎOpen¥á¥½¥Ã¥É¤òÍøÍѤ·¤Æ¼èÆÀ¤¹¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£
¤·¤«¤·¡¢¤³¤ÎÊýË¡¤Ç¤Ï¡¢¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë»ö¤¬¤Ç¤­¤Þ¤»¤ó¡£¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤Î¼Â¹Ô·ë²Ì¤ò¼èÆÀ¤¹¤ë¤Ë¤Ï

  1. Command¥ª¥Ö¥¸¥§¥¯¥È¤ÎActiveConnection¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤹ¤ë¡£
  2. Command¥ª¥Ö¥¸¥§¥¯¥È¤ÎCommandText¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤹ¤ë¡£
  3. Command¥ª¥Ö¥¸¥§¥¯¥È¤ÎExecute¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¡£
  • ½ñ¼°
    Set recordset = command.Execute(recordsaffected, parameters, options)
    
    recordset   :Recordset¥ª¥Ö¥¸¥§¥¯¥È·¿¤Î¥ª¥Ö¥¸¥§¥¯¥ÈÊÑ¿ô
    command     :³«¤¤¤Æ¤¤¤ëCommand¥ª¥Ö¥¸¥§¥¯¥È
    recordsetsaffected  :(¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë¤È¤­¤ÏÀßÄꤷ¤Ê¤¤)
    parameters  :¥Ñ¥é¥á¡¼¥¿
    options     :(¾Êά²Ä)¥×¥í¥Ð¥¤¥À¤¬CommandText¥×¥í¥Ñ¥Æ¥£¤òɾ²Á¤¹¤ëÊýË¡
  • Îã1
    command.Execute(, "ÅìµþÅÔ")

¥Ñ¥é¥á¡¼¥¿¤¬1¤Ä¤À¤±¤Î¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë

Access¤Ç¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë¤È¡¢[¥Ñ¥é¥á¡¼¥¿¤ÎÆþÎÏ]¥À¥¤¥¢¥í¥Ü¥Ã¥¯¥¹¤¬É½¼¨¤µ¤¨¤Þ¤¹¡£
Command¥ª¥Ö¥¸¥§¥¯¥È¤ò»È¤Ã¤Æ¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë¤È¤­¡¢Æ±¤¸¤è¤¦¤Ë¥Ñ¥é¥á¡¼¥¿ÆþÎÏÍѤΥÀ¥¤¥¢¥í¥°¥Ü¥Ã¥¯¥¹¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢InputBox´Ø¿ô¤òÍøÍѤ·¤Þ¤¹¡£

  • ½ñ¼°
    retvalue = InputBox(prompt, title)
    
    retvalue    :Ìá¤êÃÍ(String·¿) ¥æ¡¼¥¶¤¬ÆþÎϤ·¤¿ÃÍ
    prompt      :¥À¥¤¥¢¥í¥°¥Ü¥Ã¥¯¥¹¤Ë½ÐÎϤ¹¤ëʸ»úÎó
    tite        :¥À¥¤¥¢¥í¥°¥Ü¥Ã¥¯¥¹¤Î¥¿¥¤¥È¥ë¥Ð¡¼¤Ë½ÐÎϤ¹¤ëʸ»úÎó
  • Îã1 [Q_¥Ñ¥é¥á¡¼¥¿]¥¯¥¨¥ê¤òºîÀ®¤·¤Æ¡¢[ÅÔÆ»Éܸ©]¥Õ¥£¡¼¥ë¥É¤ÎÃê½Ð¾ò·ï¤Î¤È¤³¤í¤Ë[param]¤ÈÆþÎϤ·¤¿¥¯¥¨¥ê¤ò¤Ä¤¯¤Ã¤Æ¤ª¤¯
Public Sub adoPam()
  Dim cn As New ADODB.Connection
  Dim rs As New ADODB.Recordset
  Dim com As New ADODB.Command
  Dim param As String
  
  Set cn = CurrentProject.Connection
  
  param = InputBox("ÅÔÆ»Éܸ©¤òÆþÎÏ")
  If param = "" Then '---------------------------------------------­¡
    Exit Sub
  End If
  
  com.ActiveConnection = cn   '------------------------------------­¢
  com.CommandText = "Q_¥Ñ¥é¥á¡¼¥¿"  '------------------------------­£
  Set rs = com.Execute(, param)  '---------------------------------­¤
  
  Do Until rs.EOF
    Debug.Print rs!¸ÜµÒID, rs!»á̾, rs!ÅÔÆ»Éܸ©
    rs.MoveNext
  Loop
  Set com = Nothing   '--------------------------------------------­¥
  rs.Close: Set rs = Nothing: cn.Close: Set cn = Nothing
End Sub
  • ­¡ÆþÎÏʸ»ú¤¬Null¤Î¾ì¹ç¤Î½èÍý
  • ­¢ActiveConnection¥×¥í¥Ñ¥Æ¥£¤Ë¡¢ÀܳÃæ¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÀßÄꤹ¤ë¡£
  • ­£CommandText¥×¥í¥Ñ¥Æ¥£¤Ë¡¢¼Â¹Ô¤¹¤ë¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤Î̾Á°¤òÀßÄꤹ¤ë¡£
  • ­¤¥À¥¤¥¢¥í¥°¥Ü¥Ã¥¯¥¹¤ËÆþÎϤµ¤ì¤¿Ãͤò»È¤Ã¤Æ¡¢¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë¡£
  • ­¥¥ª¥Ö¥¸¥§¥¯¥ÈÊÑ¿ô¤ÈCommand¥ª¥Ö¥¸¥§¥¯¥È¤Î´ØÏ¢¤ò̵¸ú¤Ë¤¹¤ë¡£
    Command¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤ÏClose¥á¥½¥Ã¥É¤¬¤¢¤ê¤Þ¤»¤ó¡£
  • »²¹Í
    ¤³¤ÎÊýË¡¤ÇÁªÂò¥¯¥¨¥ê¤ò¼Â¹Ô¤·¤¿¤ê¡¢¥Æ¡¼¥Ö¥ë¤«¤é¥ì¥³¡¼¥É¤ò¼èÆÀ¤·¤¿¤ê¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£
    ¤¿¤À¤·¡¢¼èÆÀ¤·¤¿¥ì¥³¡¼¥É¥»¥Ã¥È¤Ï¡¢¤Ä¤Í¤ËÆɤ߼è¤êÀìÍѤǤ¹¡£
    ¥ì¥³¡¼¥É¤ÎÆâÍƤòÊÔ½¸¤¹¤ë»ö¤¬¤Ç¤­¤Ê¤¤¤Î¤Ç¡¢Ãí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£

Ê£¿ô¤Î¥Ñ¥é¥á¡¼¥¿¤ò¤â¤Ã¤¿¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë

¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤ËÊ£¿ô¤Î¥Ñ¥é¥á¡¼¥¿¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ï¡¢¥¯¥¨¥ê¤ËÅϤ¹ÃͤòÇÛÎó¤Ç»ØÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
¤³¤Î¤È¤­¤Ë¤ÏArray´Ø¿ô¤ò»È¤¤¤Þ¤¹¡£

  • ½ñ¼°
    retvalue = Array(arglist)
    
    retvalue    :Ìá¤êÃÍ(Variant·¿)
    arglist     :ÇÛÎó¤ò¹½À®¤¹¤ëÃÍ
  • Îã1
    Set recordset = command.Execute(, Array("ÅìµþÅÔ","ÂçºåÉÜ")

SQL¥¹¥Æ¡¼¥È¥á¥ó¥È

SQL(Structured Query Language)¥¹¥Æ¡¼¥È¥á¥ó¥È¤Ï»ÈÍѤ¹¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¥¨¥ó¥¸¥ó¤Ë¤è¤Ã¤Æ½ñ¤­Êý¤¬¾¯¤·¤º¤Ä°Û¤Ê¤ê¤Þ¤¹¡£
¥¯¥¨¥ê¤Î¡ÖSQL¥Ó¥å¡¼¡×¤òÍøÍѤ¹¤ë¤È¡¢ºîÀ®¤·¤¿¥¯¥¨¥ê¤òSQL¥¹¥Æ¡¼¥È¥á¥ó¥È¤ËÊÑ´¹¤¹¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£

Visual Basic¤ÇSQL¥¹¥Æ¡¼¥È¥á¥ó¥È¤ò¼Â¹Ô¤¹¤ë

ÁªÂò¥¯¥¨¥ê¤òɽ¤¹SQL¥¹¥Æ¡¼¥È¥á¥ó¥È

ÁªÂò¥¯¥¨¥ê¤È¤Ï¡¢¥Æ¡¼¥Ö¥ë¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥Ç¡¼¥¿¤ò¡¢¤½¤Î¤Þ¤Þ¤Î·Á¤Ç¼èÆÀ¤¹¤ë¥¯¥¨¥ê¤Ç¤¹¡£
¼èÆÀ¤¹¤ë¥Õ¥£¡¼¥ë¥É¤Ï¼«Í³¤Ë»ØÄꤹ¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£
¤Þ¤¿¡¢¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤¦¾ò·ï¤äʤÙÂؤ¨¤ò»ØÄꤹ¤ë»ö¤â¤Ç¤­¤Þ¤¹¡£

  • ½ñ¼°
    SELECT fieldname1, fieldname2¡¦¡¦¡¦
    FROM tablename
    
    fieldname   :¼èÆÀ¤¹¤ë¥Õ¥£¡¼¥ë¥É̾
    tablename   :¥Æ¡¼¥Ö¥ë̾
  • Îã1
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[¸ÜµÒID]¥Õ¥£¡¼¥ë¥É¤È[¸ÜµÒ̾]¥Õ¥£¡¼¥ë¥É¤ò¼èÆÀ¤¹¤ë
    SELECT ¸ÜµÒID,¸ÜµÒ̾ FROM T_¸ÜµÒ
  • Îã2
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é¤¹¤Ù¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤ò¼èÆÀ¤¹¤ë
    SELECT * FROM T_¸ÜµÒ

¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ëSQL¥¹¥Æ¡¼¥È¥á¥ó¥È

WHERE¶ç¤òÍøÍѤ¹¤ë¤È¡¢¥ì¥³¡¼¥É¤ÎÃê½Ð¾ò·ï¤ò»ØÄꤹ¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£

  • ½ñ¼°
    SELECT fields1, fields2,¡¦¡¦¡¦
    FROM tablename
    WHERE criteria
    
    fieldname   :¼èÆÀ¤¹¤ë¥Õ¥£¡¼¥ë¥É̾
    tablename   :¥Æ¡¼¥Ö¥ë̾
    criteria    :¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ë¾ò·ï
  • Îã1
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[ÅÔÆ»Éܸ©]¥Õ¥£¡¼¥ë¥É¤¬¡ÖÅìµþ¡×¤Î¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ë¡£
    SELECT * FROM T_¸ÜµÒ WHERE ÅÔÆ»Éܸ© = 'ÅìµþÅÔ'
  • Îã2
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[À­ÊÌ]¥Õ¥£¡¼¥ë¥É¤¬¡Ö1¡×¤Î¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ë¡£
    SELECT * FROM T_¸ÜµÒ WHERE À­ÊÌ = 1	

ʸ»ú¥Ñ¥¿¡¼¥ó¤òÈæ³Ó¤·¤ÆÃê½Ð¤¹¤ëSQL¥¹¥Æ¡¼¥È¥á¥ó¥È

WHERE¶ç¤ËÃê½Ð¾ò·ï¤ò»ØÄꤹ¤ë¤È¤­¤ËLIKE±é»»»Ò¤òÍøÍѤ¹¤ë¤È¡¢Ê¸»ú¥Ñ¥¿¡¼¥ó¤òÈæ³Ó¤·¤Æ¥ì¥³¡¼¥É¤òÃê½Ð¤Ç¤­¤Þ¤¹¡£

  • Îã
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[ŽÌŽØŽ¶ŽÞŽÅ]¥Õ¥£¡¼¥ë¥É¤¬¡Ö¤¢¹Ô¡×¤Ç»Ï¤Þ¤ë¤Î¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ë¡£
    SELECT * FROM T_¸ÜµÒ WHERE ŽÌŽØŽ¶ŽÞŽÅ LIKE '[Ž±-Žµ]%

ÈϰϤò»ØÄꤷ¤ÆÃê½Ð¤¹¤ëSQL¥¹¥Æ¡¼¥È¥á¥ó¥È

WHERE¶ç¤ËÃê½Ð¾ò·ï¤ò»ØÄꤹ¤ë¤È¤­¤ËBETWEEN¡¦¡¦¡¦AND±é»»»Ò¤òÍøÍѤ¹¤ë¤È¡¢ÈϰϤò»ØÄꤷ¤Æ¥ì¥³¡¼¥É¤òÃê½Ð¤Ç¤­¤Þ¤¹¡£

  • Îã
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[À¸Ç¯·îÆü]¥Õ¥£¡¼¥ë¥É¤ÎÃͤ¬¡Ö1970ǯ1·î1Æü¡Á1970ǯ12·î31Æü¡×¤Î¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ë¡£
    SELECT * FROM T_¸ÜµÒ WHERE À¸Ç¯·îÆü BETWEEN #01/01/1970# AND #12/31/1970#

Ê£¿ô¤Î¾ò·ï¤ÇÃê½Ð¤¹¤ëSQL¥¹¥Æ¡¼¥È¥á¥ó¥È

WHERE¶ç¤Ë¤Ï¡¢Ê£¿ô¤Î¾ò·ï¤ò»ØÄꤹ¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£
¡ÖA¤«¤ÄB¡×¤ÏAND¡¢¡ÖA¤Þ¤¿¤ÏB¡×¤ÏOR±é»»»Ò¤òÍøÍѤ·¤Þ¤¹¡£

  • Îã1
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[À­ÊÌ]¤¬¡Ö1¡×¤«¤Ä[À¸Ç¯·îÆü]¥Õ¥£¡¼¥ë¥É¤ÎÃͤ¬¡Ö1970ǯ1·î1Æü¡Á1970ǯ12·î31Æü¡×¤Î¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ë¡£
    SELECT * FROM T_¸ÜµÒ
    WHERE((À­ÊÌ=1)AND(À¸Ç¯·îÆü BETWEEN #01/01/1970# AND #12/31/1970#))
  • Îã2
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[ÅÔÆ»Éܸ©]¥Õ¥£¡¼¥ë¥É¤¬¡ÖÅìµþÅԡפޤ¿¤Ï¡ÖÂçºåÉܡפΥ쥳¡¼¥É¤òÃê½Ð¤¹¤ë¡£
    SELECT * FROM T_¸ÜµÒ
    WHERE((ÅÔÆ»Éܸ©='ÅìµþÅÔ') OR (ÅÔÆ»Éܸ© = 'ÂçºåÉÜ'))

¥ì¥³¡¼¥É¤òʤÙÂؤ¨¤ë

ORDER BY¶ç¤òÍøÍѤ¹¤ë¤È¡¢»ØÄꤷ¤¿¥Õ¥£¡¼¥ë¥É¤ò»È¤Ã¤Æ¥ì¥³¡¼¥É¤òʤÙÂؤ¨¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

  • ½ñ¼°
    SELECT fields1, fields2,¡¦¡¦¡¦
    FROM tablename
    ORDER BY sortorder
    
    fieldname   :¼èÆÀ¤¹¤ë¥Õ¥£¡¼¥ë¥É̾
    tablename   :¥Æ¡¼¥Ö¥ë̾
    sortorder   :ʤÙÂؤ¨½ç½ø
                 ASC  :¾º½ç
                 DESC :¹ß½ç
  • Îã1
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤ò[À¸Ç¯·îÆü]¥Õ¥£¡¼¥ë¥É¤ò»È¤Ã¤Æ¾º½ç¤ÇʤÙÂؤ¨
    SELECT * FROM T_¸ÜµÒ ORDER BY À¸Ç¯·îÆü ASC
  • Îã2
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤ò[À¸Ç¯·îÆü]¥Õ¥£¡¼¥ë¥É¤ò»È¤Ã¤Æ¹ß½ç¤ÇʤÙÂؤ¨
    SELECT * FROM T_¸ÜµÒ ORDER BY À¸Ç¯·îÆü DESC

¥Æ¡¼¥Ö¥ë¤ò·ë¹ç¤¹¤ëSQL¥¹¥Æ¡¼¥È¥á¥ó¥È

INNERJOIN¤òÍøÍѤ·¤Þ¤¹¡£

  • ½ñ¼°
    SELECT fields1, fields2,¡¦¡¦¡¦
    FROM table1 INNERJOIN table2
    ON table1.field = table2.field
    
    fieldname       :¼èÆÀ¤¹¤ë¥Õ¥£¡¼¥ë¥É̾
    table1,table2   :·ë¹ç¤¹¤ë¥Æ¡¼¥Ö¥ë̾
    field           :·ë¹ç¤Ë»È¤¦¥Õ¥£¡¼¥ë¥É¤Î̾Á°
  • ¥Æ¡¼¥Ö¥ë̾¤È¥Õ¥£¡¼¥ë¥É¤Î¶èÀÚ¤ê¤Ï¥É¥Ã¥È(.)¤Ç¤¹¡£ ÆâÉô·ë¹ç¤¹¤ë¾ì¹ç¡¢Ê£¿ô¤Î¥Æ¡¼¥Ö¥ë¤ò»ØÄꤷ¤Þ¤¹¡£
    ¤É¤Á¤é¤Î¥Æ¡¼¥Ö¥ë¤«¤é»²¾È¤¹¤ë¥Õ¥£¡¼¥ë¥É¤«ÌÀ¤é¤«¤Ë¤¹¤ë¤¿¤á¤Ë²¼µ­¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
    ¥Æ¡¼¥Ö¥ë̾.¥Õ¥£¡¼¥ë¥É̾
  • Îã
    [T_ÃíʸÍúÎò¥á¥¤¥ó]¥Æ¡¼¥Ö¥ë¤È[T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤ò·ë¹ç¤·¤Æ¡¢[ÃíʸNO]¥Õ¥£¡¼¥ë¥É¡¢[ÆüÉÕ]¥Õ¥£¡¼¥ë¥É¡¢[»á̾]¥Õ¥£¡¼¥ë¥É¤ò»²¾È¤¹¤ë¡£
    SELECT T_ÃíʸÍúÎò¥á¥¤¥ó.ÃíʸNO, T_ÃíʸÍúÎò¥á¥¤¥ó.ÆüÉÕ, T_¸ÜµÒ.»á̾
    FROM T_ÃíʸÍúÎò INNER JOIN T_¸ÜµÒ
    ON T_ÃíʸÍúÎò¥á¥¤¥ó.¸ÜµÒID = T¸ÜµÒ.¸ÜµÒID_

ÁªÂò¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë¡£

Recordset¥ª¥Ö¥¸¥§¥¯¥È¤ÎSource¥×¥í¥Ñ¥Æ¥£¤Ë¡¢ÁªÂò¥¯¥¨¥ê¤òɽ¤¹SQL¥¹¥Æ¡¼¥È¥á¥ó¥È¤òÀßÄꤷ¤ÆOpen¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Þ¤¹¡£
Source¥×¥í¥Ñ¥Æ¥£¤òÀßÄꤹ¤ëÂå¤ï¤ê¤ËOpen¥á¥½¥Ã¥É¤Îsource°ú¿ô¤ËSQL¥¹¥Æ¡¼¥È¥á¥ó¥È¤òÀßÄꤷ¤Æ¤â¡¢Æ±¤¸¤è¤¦¤Ë¥ì¥³¡¼¥É¥»¥Ã¥È¤¬¼èÆÀ¤Ç¤­¤Þ¤¹¡£

  • Îã1
    Dim mySQL AS String
    mySQL = "SELECT * FROM T_¸ÜµÒ WHERE À­ÊÌ = 1"
    recordset.Open mySQL, connection, adOpenKeyset, adLockOptimistic
  • Îã2
    Public Sub adoSelect()
      Dim cn As New ADODB.Connection
      Dim rs As New ADODB.Recordset
      Dim mySQL As String
      
      mySQL = "SELECT * FROM T_¸ÜµÒ WHERE ¥Õ¥ê¥¬¥Ê LIKE '[ŽÔ-ŽÖ]%'"
      
      Set cn = CurrentProject.Connection
      rs.Open mySQL, cn, adOpenKeyset, adLockOptimistic
      
      Do Until rs.EOF
        Debug.Print rs!¸ÜµÒID, rs!ŽÌŽØŽ¶ŽÞŽÅ
        rs.MoveNext
      Loop
      rs.Close: Set rs = Nothing: cn.Close: Set cn = Nothing
    End Sub

¥Ñ¥é¥á¡¼¥¿¥¯¥¨¥ê¤òɽ¤¹SQL¥¹¥Æ¡¼¥È¥á¥ó¥È

¥¢¥¯¥·¥ç¥ó¥¯¥¨¥ê

¥¢¥¯¥·¥ç¥ó¥¯¥¨¥ê¤È¤Ï¡¢¥Æ¡¼¥Ö¥ë¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥ì¥³¡¼¥É¤òÊѹ¹¤¹¤ë¥¯¥¨¥ê¤Ç¤¹¡£

  • ¹¹¿·¥¯¥¨¥ê :¥ì¥³¡¼¥É¤ò¹¹¿·¤¹¤ë
  • ºï½ü¥¯¥¨¥ê :¥ì¥³¡¼¥É¤òºï½ü¤¹¤ë
  • Äɲ寥¨¥ê :¥Æ¡¼¥Ö¥ë¥ì¥³¡¼¥É¤òÄɲ乤ë
  • ¥Æ¡¼¥Ö¥ëºîÀ®¥¯¥¨¥ê :¼èÆÀ¤·¤¿¥ì¥³¡¼¥É¥»¥Ã¥È¤ò¤â¤È¤Ë¤¢¤é¤¿¤Ë¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ë¡£

¹¹¿·¥¯¥¨¥ê

UPDATE¥¹¥Æ¡¼¥È¥á¥ó¥È¤òÍøÍѤ·¤Þ¤¹¡£

  • ½ñ¼°
    UPDATE tablename
    SET newvalue
    
    tablename  :ÊÔ½¸¤¹¤ë¥ì¥³¡¼¥É¤¬´Þ¤Þ¤ì¤ë¥ì¥³¡¼¥É
    newvalue   :ÊÔ½¸¤¹¤ëÆâÍÆ
  • Îã1
    UPDATE T_¸ÜµÒ SET »á̾ = »á̾ & ' ¤µ¤Þ'

ºï½ü¥¯¥¨¥ê

ºï½ü¥¯¥¨¥ê¤Ï¥Æ¡¼¥Ö¥ë¤«¤é°ìÅ٤˥쥳¡¼¥É¤òºï½ü¤¹¤ë¥¯¥¨¥ê¤Ç¤¹¡£DELETE¥¹¥Æ¡¼¥È¥á¥ó¥È¤òÍøÍѤ·¤Þ¤¹¡£

  • ½ñ¼°
    DELETE FROM tablename
    
    tablename   :ºï½ü¤¹¤ë¥ì¥³¡¼¥É¤¬´Þ¤Þ¤ì¤ë¥Æ¡¼¥Ö¥ë̾
  • Îã1
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é¤¹¤Ù¤Î¥³¡¼¥É¤òºï½ü¤¹¤ë
    DELETE FROM T_¸ÜµÒ
  • Îã2
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[ÅÔÆ»Éܸ©]¥Õ¥£¡¼¥ë¥É¤¬¡ÖÅìµþÅԡפΥ쥳¡¼¥É¤À¤±ºï½ü¤¹¤ë¡£
    DELETE FROM T_¸ÜµÒ
    WHERE ÅÔÆ»Éܸ© = 'ÅìµþÅÔ'

¿·µ¬¤Î¥ì¥³¡¼¥É¤òÄɲ乤ë

´û¸¤Î¥Æ¡¼¥Ö¥ë¤Ë¿·µ¬¤Ë¥ì¥³¡¼¥É¤òÄɲ乤ë¾ì¹ç¡¢INSERT INTO¥¹¥Æ¡¼¥È¥á¥ó¥È¤ò»È¤¤¤Þ¤¹¡£

  • ½ñ¼°
    INSERT INTO tablename(fields1, fields2,¡¦¡¦¡¦)
    VALUES (value1, value2,¡¦¡¦¡¦)
    
    tablename   :¥ì¥³¡¼¥É¤òÄɲ乤ë¥Æ¡¼¥Ö¥ë̾
    fieldname   :ÃͤòÂåÆþ¤¹¤ë¥Õ¥£¡¼¥ë¥É̾
    value       :¥Õ¥£¡¼¥ë¥É¤ËÂåÆþ¤¹¤ëÃÍ
  • Îã
    INSERT INTO T_¸ÜµÒ (¸ÜµÒID, »á̾, À¸Ç¯·îÆü)
    VALUES (21, '»³ÅÄ ÂÀϺ', #12/10/1970#)

¾¤Î¥ì¥³¡¼¥É¥»¥Ã¥È¤«¤é¥ì¥³¡¼¥É¤ò¥³¥Ô¡¼¤¹¤ë

¥Õ¥£¡¼¥ë¥É¤Î¹½À®¤¬Æ±¤¸¥ì¥³¡¼¥É¥»¥Ã¥È¤É¤¦¤·¤Ç¤¢¤ì¤Ð¡¢¥ì¥³¡¼¥É¤ò¥³¥Ô¡¼¤¹¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£

  • ½ñ¼°
    INSET INTO target
    SELECT fieldname1, fieldname2,¡¦¡¦¡¦
    FROM source
    
    target     :¥ì¥³¡¼¥É¤òÄɲ乤ë¥Æ¡¼¥Ö¥ë̾
    fieldname  :Äɲä·¤¿¥ì¥³¡¼¥É¤ËÃͤòÂåÆþ¤¹¤ë¥Õ¥£¡¼¥ë¥É
    source     :¥³¥Ô¡¼¸µ¤Î¥Æ¡¼¥Ö¥ë̾
  • Îã1
    [T_¾¦ÉÊ]¥Æ¡¼¥Ö¥ë¤Ë[T_¿·¾¦ÉÊ]¥Æ¡¼¥Ö¥ë¤Î[¾¦ÉÊ̾]¥Õ¥£¡¼¥ë¥É¤ÎÃͤò¥³¥Ô¡¼¤¹¤ë¡£
    INSERT INTO T_¾¦ÉÊ
    SELECT ¾¦ÉÊ̾ FROM T_¿·¾¦ÉÊ
  • Îã2
    [T_¾¦ÉÊ]¥Æ¡¼¥Ö¥ë¤Ë[T_¿·¾¦ÉÊ]¥Æ¡¼¥Ö¥ë¤ÎÆâÍƤò¤¹¤Ù¤Æ¥³¥Ô¡¼¤¹¤ë¡£
    INSERT INTO T_¾¦ÉÊ FROM * T_¿·¾¦ÉÊ
  • ¥³¥Ô¡¼¸µ¥Æ¡¼¥Ö¥ë¤«¤éÆÃÄê¤Î¥ì¥³¡¼¥É¤À¤±Ãê½Ð¤·¤Æ¥³¥Ô¡¼¤¹¤ë¾ì¹ç¤ÏWHERE¶ç¤ò»È¤¤¤Þ¤¹¡£
    [T_¿·¾¦ÉÊ]¥Æ¡¼¥Ö¥ë¤«¤é[ñ²Á]¥Õ¥£¡¼¥ë¥É¤¬1000±ß°Ê²¼¤Î¥ì¥³¡¼¥É¤òÃê½Ð¤·¤Æ[T_¾¦ÉÊ]¥Æ¡¼¥Ö¥ë¤ËÄɲÃ
    INSERT INTO T_¾¦ÉÊ
    SELECT * FROM T_¿·¾¦ÉÊ WHERE ñ²Á <= 1000

¥Æ¡¼¥Ö¥ëºîÀ®¥¯¥¨¥ê

¥Æ¡¼¥Ö¥ëºîÀ®¥¯¥¨¥ê¤Ï¡¢¥Æ¡¼¥Ö¥ë¤«¤éÃê½Ð¤·¤¿¥ì¥³¡¼¥É¤ò»È¤Ã¤Æ¡¢¿·¤¿¤Ë¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ë¥¯¥¨¥ê¤Ç¤¹¡£
¿·¤¿¤ËºîÀ®¤·¤¿¥Æ¡¼¥Ö¥ë¤Ë´Þ¤Þ¤ì¤ë¥Õ¥£¡¼¥ë¥É¤Ï¡¢¤â¤È¤Î¥Æ¡¼¥Ö¥ë¤ÈƱ¤¸¹½À®¤È¤Ê¤ê¤Þ¤¹¡£

  • ½ñ¼°
    SELECT fieldname1, fieldname2,¡¦¡¦¡¦
    INTO newtable
    FROM sourcetable
    WHERE criteria
    
    fieldname   :¥Æ¡¼¥Ö¥ë¤ËÄɲ乤ë¥Õ¥£¡¼¥ë¥É̾
    newtable    :ºîÀ®¤¹¤ë¥Æ¡¼¥Ö¥ë̾
    sourcetable :¥ì¥³¡¼¥É¤òÃê½Ð¤¹¤ë¥Æ¡¼¥Ö¥ë̾
    criteria    :Ãê½Ð¾ò·ï
  • Îã
    [T_¸ÜµÒ]¥Æ¡¼¥Ö¥ë¤«¤é[À­ÊÌ]¥Õ¥£¡¼¥ë¥É¤ÎÃͤ¬¡Ö2¡×¤Î¥ì¥³¡¼¥É¤òÃê½Ð¤·¡¢[T_½÷À­]¤È¤¤¤¦Ì¾Á°¤Î¥Æ¡¼¥Ö¥ë¤òºîÀ®¤¹¤ë¡£
    SELECT * INTO T_½÷À­ FROM T_¸ÜµÒ
    WHERE À­ÊÌ=2

¥¢¥¯¥·¥ç¥ó¥¯¥¨¥ê¤ò¼Â¹Ô¤¹¤ë

Command¥ª¥Ö¥¸¥§¥¯¥È¤ÎCommandText¥×¥í¥Ñ¥Æ¥£¤Ë¥¢¥¯¥·¥ç¥ó¥¯¥¨¥ê¤òɽ¤¹SQL¥¹¥Æ¡¼¥È¥á¥ó¥È¤òÀßÄꤷ¤Æ¡¢Execute¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢¤½¤Î¥¢¥¯¥·¥ç¥ó¤ò¼Â¹Ô¤¹¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£

  • Îã1
    command.ActiveConnection = connection
    command.CommandText = "UPDATE T_¸ÜµÒ SET »á̾ = »á̾ & ' ¤µ¤Þ'"
    command.Execute
  • Îã2
    Public Sub adoaction()
      Dim cn As New ADODB.Connection
      Dim rs As New ADODB.Recordset
      Dim com As New ADODB.Command
      Dim mySQL As String
      
      mySQL = "UPDATE T_¸ÜµÒ SET »á̾ = »á̾&' ÍÍ' WHERE À­ÊÌ=1"
      Set cn = CurrentProject.Connection
      com.ActiveConnection = cn
      com.CommandText = mySQL
      com.Execute
      
      rs.Open "T_¸ÜµÒ", cn, adOpenKeyset, adLockOptimistic
      Do Until rs.EOF
        Debug.Print rs!¸ÜµÒID, rs!À­ÊÌ, rs!»á̾
        rs.MoveNext
      Loop
      
      Set com = Nothing
      rs.Close: Set rs = Nothing: cn.Close: Set cn = Nothing
    End Sub