PDA

View Full Version : چگونه دیتابیس آماده را در لیست نشون بدم ؟



deadmarshal
پنج شنبه 15 آبان 1393, 22:21 عصر
سلام دوستان، من توی پایتون تازه کار هستم، میخواستم بدونم چطور یک دیتابیس آماده که با برنامه های ساخت دیتابیس SQLite درست کردم چطور اون آیتم های دیتابیس رو توی لیست باکس در تکینتر نشون بدم ؟

خیلی ممنون.

n.nowroozi
جمعه 16 آبان 1393, 11:16 صبح
دوتا بحث هست اول اینکه باید از یکی از پکیجهای پایتون که برای کار با دیتابیس هست داده هارو از دیتابیس بخونی(مثل این لینک (http://zetcode.com/db/sqlitepythontutorial/)) و موضوع بعدی استفاده از ویجت های تی کی (http://effbot.org/tkinterbook/listbox.htm) برای نمایش داده ها هست.

deadmarshal
جمعه 16 آبان 1393, 13:22 عصر
دوتا بحث هست اول اینکه باید از یکی از پکیجهای پایتون که برای کار با دیتابیس هست داده هارو از دیتابیس بخونی(مثل این لینک (http://zetcode.com/db/sqlitepythontutorial/)) و موضوع بعدی استفاده از ویجت های تی کی (http://effbot.org/tkinterbook/listbox.htm) برای نمایش داده ها هست.

خیلی ممنون. توی لینک اولی که گفتین کدوم قسمتش به درد من میخوره ؟ چون من فقط میخوام دیتابیس آماده رو نمایش بدم ولی این لینک فکنم گفته چطور دیتابیس رو با کدزنی با زبون sql بنویسم. یک راهنمایی کوچیک کنید لطفا من تازه کارم :خجالت:

n.nowroozi
جمعه 16 آبان 1393, 16:29 عصر
اگه فقط میخوای داده بکشی بیرون قسمت Retrieving data رو بخونی کفایت میکنه

deadmarshal
جمعه 16 آبان 1393, 17:14 عصر
سلام ببخشید اینقدر سوال می کنم.

من نوشتم اینو و وقتی test.db خالی مینویسم که خطا میده باز نمیکنه دیتابیس رو. و وقتی هم با file مینویسم یک خطای دیگه میده:گریه:
هم اسکریپت پایتون و دیتابیس توی یک پوشه هم هستند.

https://www.dropbox.com/s/5vqejj0pgvlchuo/SQLite.py?dl=0

n.nowroozi
شنبه 17 آبان 1393, 08:37 صبح
اروری که میده رو بزار. تیبل game توی دیتابیس هست؟

deadmarshal
شنبه 17 آبان 1393, 10:24 صبح
آقا خیلی ممنون درست شد الان اطلاعات رو نشون میده. باید برم سراغ لیست باکس. سوال داشتم بازم میپرسم ممنون.

125433

deadmarshal
شنبه 17 آبان 1393, 11:54 صبح
این کد :

#!/usr/bin/python

import sqlite3 as lite
import sys
from Tkinter import *


root = Tk()


conn = lite.connect('test.db')


with conn:


cur = conn.cursor()
cur.execute("SELECT * FROM rows")


rows = cur.fetchall()


for row in rows:
lb1 = Listbox(root)
lb1.pack()









root.mainloop()

حالا باید بنویسم lb1.get یا insert یا با چی باید اطلاعات رو توی لیست نشون بدم ؟

n.nowroozi
شنبه 17 آبان 1393, 14:53 عصر
یه چیزی توی این مایه ها باید جواب بده





lb1 = Listbox(root)
lb1.pack()
for item in rows:
lb1.insert(END, item)

deadmarshal
شنبه 17 آبان 1393, 17:28 عصر
یه چیزی توی این مایه ها باید جواب بده





lb1 = Listbox(root)
lb1.pack()
for item in rows:
lb1.insert(END, item)


خیلی ممنون درست شد. حالا میخوام با کلیک بر روی هر یک از آیتم ها یک متنی درباره اون آیتم توی تکست باکس نشون بده (تکست باکس سمت راست لیستم باشه). برای اون متن باید ی فیلد دیگه توی دیتابس درست کنم چون باید متن توی تکست باکس هم از توی دیتابیس لود کنه.

یک دنیا ممنون خیلی جاها میرم جواب نمیدن:ناراحت: میدونم سوال زیاد میپرسم ولی ببخشید دیگه.