Page 124 - python
P. 124

98




                                      
                            ่
                                         ู
                   9.4 การเชอมตอฐานขอมล MySQL เขากับ Python
                            ื
                                                                                                    ั
                          การเชื่อมตอฐานขอมูล MySQL ตองระบุ หมายเลข IP ของ MySQL Server, ชื่อผูใช, รหสผาน,
                   ชื่อฐานขอมูล โดยเขียนโคดดังนี้

                   ตัวอยางที่ 9.1 การเชื่อมตอฐานขอมูล

                    import mysql.connector as MySQL
                    config = {'user': "i_user", 'password': "123456", 'host': "202.28.34.204",
                    'database': "i_1202201", 'raise_on_warnings': True}

                    cnx = MySQL.connect(**config)
                    cnx.close()
                           ตัวอยางที่ 9.1 คําสั่ง import mysql.connector as MySQL เปนการขอใชโมดูล mysql.
                   connector และตั้งชื่อวา MySQL ตัวแปร config มีชนิดดิกชันนารี เก็บคียและคาขอมูลของ user,
                   password , host , database และ raise_on_warings ตัวแปร cnx เปนอ็อบเจ็คการเชื่อมตอโดยสงตัว

                   แปร config เขาไปเปนอารกิวเมนตของฟงกชั่น connect() เมื่อเครื่องหมาย ** คือ การปอนอารกิวเมนต
                                                     
                                                                                ่
                                                                                            ่
                                                                                          ํ
                                                                                ื
                          ั
                          ่
                         
                                                                          
                       
                                                       ่
                                                       ื
                   ใหฟงกชนดวยตัวแปรดิกชันนารี หลังจากเชอมตอสาเร็จจะทําการปดการเชอมตอดวยคาสง cnx.close()
                                                             ํ
                                                                                            ั

                   9.5 การเพิ่มขอมูลดวยคําสั่ง Insert

                   ตัวอยางที่ 9.2 การเพิ่มขอมูลในตาราง 41410606_friend
                    import mysql.connector as MySQL
                    config = {'user': "i_user", 'password': "123456", 'host': "202.28.34.204",
                    'database': "i_1202201", 'raise_on_warnings': True}
                    cnx = MySQL.connect(**config)
                    cursor = cnx.cursor()
                    Ds = {'firstname': 'จักรกฤษณ',
                      'lastname': 'แสงแกว',
                      'email': "chakkrit@msu.ac.th" }
                    placeholders = ', '.join(['%s'] * len(Ds))

                    columns = ', '.join("`" + str(x).replace('/', '_') + "`" for x in Ds.keys())
                    values = ', '.join("'" + str(x).replace('/', '_') + "'" for x in Ds.values())
                    sql = "INSERT INTO %s ( %s ) VALUES ( %s );" % ('41410606_friend', columns, values)

                    cursor.execute(sql)
                    cnx.commit()
                    cnx.close()
                                   ี่
                           ตัวอยางท 9.2 การเพิ่มขอมูลจะเตรียมขอมูลในตัวแปร Ds เปนชนิดดิกชันนารี และจะมีคีย
                                                              
                                                                                                 ึ้
                   ประกอบดวย firstname, lastname และ email ซึ่งตรงกบคอลัมนของตารางที่สรางขน ตัวแปร
                                                                      ั
                                                          
                   placeholders จะทําหนาที่เชื่อมคียและคาขอมูลและสังเคราะหคําสั่ง SQL จากตัวแปรดิกชันนารี
   119   120   121   122   123   124   125   126   127   128   129