| Author |
Message |
dannyong1999 |
| Location: |
|
|
Post subject: Client Server Problem
Posted: 24/Sep/2005 23:12
|
|
onIntermediate
Joined: 24-Sep-2005
Posts: 46
Status: Offline
|
|
| Saya sedang mencoba membuat aplikasi client server menggunakan mysql 4.0 dan Zeos 3.5, aplikasi sudah saya buat Pada event save tidak ada masalah tetapi ada masalah ketika data di edit, karena saya menggunakan DBGrid untuk menampilkan data. ketika 2 user bersama-sama melakukan klik data pada grid, pada saat event save jadi kacau. karena saya menggunakan insert into sedangkan insert into yang saya tau berada di posisi server side. apakah bisa proses sql seperti insert into berlangsung di client side seperti halnya proses save. mohon pencerahannya. Tq |
|
|
| |
|
|
|
 |
tox2wow |
| Location: Qnchay |
|
Post subject: Re : Client Server
Posted: 25/Sep/2005 02:34
|
|
onKnowledgeable

Joined: 13-May-2005
Posts: 146
Location: Qnchay
Status: Offline
|
|
|
Quote:
apakah bisa proses sql seperti insert into berlangsung di client side seperti halnya proses save
Hmm, MySQL kan emang buat client server, jadi pasti bisa donk perintah DML nya dari client, asalkan client memang di beri hak untuk memanipulasi data di server. Errrrrrrr .. bener ga ya ??? wakakakkaka ...  |
_________________ http://www.geocities.com/tox2wow/Sig.jpg
|
| |
|
|
|
 |
dannyong1999 |
| Location: |
|
Post subject: Client Server Problem
Posted: 25/Sep/2005 07:53
|
|
onIntermediate
Joined: 24-Sep-2005
Posts: 46
Status: Offline
|
|
Saya bingung nih mas, kalo misalnya kita mo save pake table,
...........
table1.post;
table1.applyupdate;
kalo pake sql
select * from barang insert into tempbarang
gimana supaya event insert intonya tersebut tidak terjadi di server side tapi di client sideyach... gua kagak tau nih caranya, udah nyerah nich... mohon penjelasan dari bapak guru..... |
|
|
| |
|
|
|
 |
|
deLogic |
| Location: Jakarta |
|
Post subject:
Posted: 25/Sep/2005 15:27
|
|
onMage
Joined: 04-Jul-2005
Posts: 2282
Location: Jakarta
|
|
kalo yang true client server, harusnya pas user sama2 melakukan operasi pada record yg sama, misal edit atau delete, maka server harus melakukan locking terhadap record tersebut sehingga tidak dapat diakses oleh user lain. Jika server tidak melakukan locking, maka Anda harus melakukan locking secara manual sesaat sebelum menjalankan edit.
yang jadi pertanyaan adalah mengapa Anda ingin insert di client side. operasi di client side dapat menimbulkan ketidak sinkron-an data di server, kecuali jika Anda ingin browse aja.
Untuk insert client side, Anda dapat menggunakan ClientDataset.
btw itu Zeos 3.5..?? gak salah tuh, udah kuno.. versi stabil adalah 6.1.5 patch 2, sedangkan alpha adalah 6.5. |
_________________ .:: Lagi gak pengen pasang signature ::.
|
| |
|
|
|
 |
dannyong1999 |
| Location: |
|
Post subject: Re: Client Server Problem
Posted: 25/Sep/2005 16:05
|
|
onIntermediate
Joined: 24-Sep-2005
Posts: 46
Status: Offline
|
|
Model pemrograman yang saya gunakan seperti ini :
Saya membuat table di server side dengan nama tempgudang. Sistem akses seperti kasir di swalayan. Form gudang diakses lebih dari 5 orang. dan saya menggunakan table temporary di server side dengan asumsi saya tidak tahu bahwa ternyata form gudang akan diakses lebih dari 5 orang. saya tahunya hanya untuk 1 user saja.
Bentuk form adalah Master Detail dimana detailnya menggunakan dbgrid. jadi menggunakan 3 table yaitu barang, barangtrans dan tempbarangtrans.
Kemudian saya buatkan form browse barang. dimana form tersebut akan diedit dengan cara klik2x pada grid tersebut. masalah terjadi pada saat edit bukan pada saat save karena pada saat save sudah saya proteksi.
pada saat edit, proses tersebut dilakukan oleh lebih dari 5 user juga. Masalah akan terjadi pada saat di edit oleh 5 user tersebut pada saat bersamaan kemudian di save pada saat bersamaan. pada event save tersebut saya lakukan proses insert into sedangkan proses insert into kan berlangsung di server side jadinya proses editing berlangsung di client side. Solusinya gimana ya mas....
Untuk record locking saya lihat di MyISAM pada MYSQL kok kelihatannya tidak ada ya mas, apa memang harus di program secara manual ??? ataukah ada cara lain yang lebih baik.
Mengenai ZEOS 6.15 patch2 apakah memang lebih bagus dan lebih cepat ????
Mohon informasi dan penjelasan dari teman-teman. Terima kasih banyak |
|
|
| |
|
|
|
 |
grounders |
| Location: |
|
Post subject:
Posted: 25/Sep/2005 20:54
|
|
onKnowledgeable
Joined: 11-Jul-2005
Posts: 159
Status: Offline
|
|
jika program yang Anda buat memang untuk client server kenapa Anda menggunakan pemikiran program stand alone, ya pasti akan keluar error semacam itu...
saran saya kenapa Anda tidak membuatkan tabel permanen untuk masing2 client yang anda letakkan di komputer clientnya. jadi satu client akan mempunyai tabel permanen sendiri yang dapat digunakan untuk mengedit data gudang. Jadi saat client akan melakukan perubahan data gudang maka client tersebut akan meminta data dari server sesuai yang diperlukan saja. nah maka client akan dapat dengan bebas merubah data tersebut. kemudian ketika akan dilakukan save data atau perubahan ke server Anda dapat menerapkan metode transaksi, jadi ketika ada error tinggal di rollback aja. sehingga kekonsistenan data pada server akan terjaga.
dengan logika pemrograman yang saya utarakan diatas maka traffic jaringan akan menjadi lebih sedikit karena program Anda tidak selalu melakukan komunikasi dengan server.
Oh ya setau saya MySQL menggunakan clientside deh, soalnya informasi yang saya dapatkan dari penggunaan ADO ketika saya aktifkan maka cursornya pasti akan menjadi clientside |
|
|
| |
|
|
|
 |
dannyong1999 |
| Location: |
|
Post subject: Re : Client Server Problem
Posted: 26/Sep/2005 08:33
|
|
onIntermediate
Joined: 24-Sep-2005
Posts: 46
Status: Offline
|
|
Kalo Mysql apakah ada metode lockingnya karena saya coba bikin palikasi pake dbgrid kemudian 2 user (User C dan User D) akses data A misalnya kenapa tidak terjadi locking seolah-olah keluar message data A baru diperbarui USER C ketika USER D mau mengakses data tersebut.
Untuk Zeos 3.5 kalo mau diupgrade ke Zeos 6.15 apakah bisa karena saya sudah terlanjur koding datanya dan lagi kemaren saya coba ga isa. apakah ada cara untuk mengupdat dalam sekejap.
Tq |
|
|
| |
|
|
|
 |
|
deLogic |
| Location: Jakarta |
|
Post subject:
Posted: 26/Sep/2005 08:48
|
|
onMage
Joined: 04-Jul-2005
Posts: 2282
Location: Jakarta
|
|
| saya belum pernah upgrade dari 3.5 ke 6.15, coba buka forum Zeos di sourceforge, mungkin ada petunjuk.. |
_________________ .:: Lagi gak pengen pasang signature ::.
|
| |
|
|
|
 |
agusmade |
| Location: Yogyakarta |
|
Post subject:
Posted: 06/Mar/2007 12:12
|
|
onBeginner

Joined: 03-Apr-2005
Posts: 5
Status: Offline
|
|
saya, sudah lama menggunakan MySQL untuk hampir semua aplikasi database yang saya buat belakangan ini. awalnya saya menggunakan metode yg sama dengan danny, tapi emang banyak masalah.
akhirnya untuk seluruh aktivitas terhadap data saya gunakan sintaks SQL langsung, untuk yg berhubungan dengan penampilan saya gunakan ZReadOnlyQuery, trus tuk update, hapus, tambah dan sebagainya ZSQLProcessor. trus tuk backup restore ato dump saya buak komponen sendiri karna ZBackup banyak masalah.
moga bisa membantu.
hehe... ngomong2, lama bgt saya g masuk sini ternyata dah banyak orang. |
|
|
| |
|
|
|
 |
Tiramitzu |
| Location: |
|
Post subject:
Posted: 06/Mar/2007 13:46
|
|
onBeginner
Joined: 06-Mar-2007
Posts: 7
Status: Offline
|
|
| klo dipake di client server, DBGrid,DBTable atau DBaware lainnya emang berat. kejadian locking record pasti ada. coba klo nampilinnya pake sintak2 SQL aja trus ditampilin di grid biasa. klo datanya banya pake limit biar ga berat. klo mau edit, delete atau post juga pake sintaks sql.setelah sintak dijalankan data dibuffer kemudian lepas tabel biar ga locking lama2 |
|
|
| |
|
|
|
 |
Akuna-Matata |
| Location: Bogor-Jakarta |
|
Post subject:
Posted: 06/Mar/2007 14:14
|
|
onSkilled
Joined: 29-Sep-2006
Posts: 82
Location: Bogor-Jakarta
Status: Offline
|
|
Setuju dengan @Tiramitzu...kecuali bagian DBGrid.
Masalah berat atau tidak, ini tergantung memilih komponen yg cocok utk melakukan pengambilan data di database (server).
Seperti kata bro @deLogic diatas, silahkan coba dulu TClientDataSet. Komponen ini menurut saya punya fleksibelitas yg tinggi.
Jika anda memakai grid biasa (stringgrid ?) masalahnya anda harus melakukan effort "lebih" utk sekedar melakukan sorting, filter dan pencarian record. Kecuali jika anda tidak membutuhkan fungsi2 tsb... |
|
|
| |
|
|
|
 |
bangfauzan |
| Location: |
|
|
Post subject:
Posted: 07/Mar/2007 12:11
|
|
onSkilled
Joined: 04-Dec-2006
Posts: 68
Status: Offline
|
|
Emang kamu menyimpan di dua tempat??????
Kalo pake DBGrid kan otomatis nyimpan ketika POST (atau APPLYUPDATES) ke dataset yang digunakan DBGrid itu? kenapa harus ditambah Insert?. kecuali kamu ingin melakukan redundansi atau mungkin summary. misalnya kalu Tabel1 nambah 1 recor tabel2 juga tambah 1 record, itu baru pertanyaan kamu relevan. terus kamu bilang perintah insert di server side, maksudnya gimana? bukannya mysql4 belum mendukung storedprocedure apalagi trigger? Jadi kamu naruh perintahnya dimana? Tapi kalo kamu pake versi 5 kamu bisa menempatkan perintah insert di stored procedure maupun trigger.
Sekarang aku asumsikan kamu membuat data kembar di tabel1 dan tabel2.
Pada client side kamu bisa melakukan hal-hal berikut:
- Tambahkan kompone ZQuery (ZSQLProcessor juga bisa)
- Tambahkan script berikut pada property SQL (atau property script untuk ZSQLProcessor)
INSERT INTO TABEL2 (A,B,C,D)
SELECT A, B, C, D FROM TABEL1
WHERE TABEL1.A NOT IN (SELECT A FROM TABEL2)
ATAU
WHERE TABEL1.A = :KONDISI
Bisa juga kamu menggunakan perintah REPLACE agar data yang sudah ada tidak dimasukkan lagi
REPLACE INTO TABEL2 (A,B,C,D)
SELECT A, B, C, D FROM TABEL1
- Pada event OnPost di tabel1 tambahkan script berikut
ZQuery1.ExecSQL;
Kalo pake ZSQLProcessor
ZSQLProcessor1.execute;
Semoga bermanfaat. |
|
|
| |
|
|
|
 |
goehsatrio |
| Location: |
|
Post subject:
Posted: 11/Jun/2007 15:26
|
|
onIntermediate
Joined: 08-Dec-2005
Posts: 58
Status: Offline
|
|
saya pemula delphi. pake delphi 7, mysql 4.1.20, zeos 6, pake Zconnection , terus di tabel, ketika mau diaktifkan kok keluar pesan error "query was empty", kenapa ya? trus install zeos yg baik dan benar gimana sih?  |
|
|
| |
|
|
|
 |
cyber_hecker |
| Location: Ponti Hot City |
|
Post subject:
Posted: 11/Jun/2007 17:01
|
|
onProfessional

Joined: 19-May-2005
Posts: 981
Location: Ponti Hot City
Status: Offline
|
|
| no comment.. di liat dari errornya aja udah keliatan. berarti pada ZQuerynya tidak ada syntax SQL. |
_________________
|
| |
|
|
|
 |
|
yayaretina |
| Location: Jakarta |
|
Post subject:
Posted: 11/Jun/2007 17:05
|
|
onElite

Joined: 07-Oct-2006
Posts: 1180
Location: Jakarta
|
|
|
|
|
 |
|
|