Di 12:25 PM 10/9/2003, aris_hermawan2000 menulis: >Pertanyaan pertama, apabila client mengirimkan parameter utk >storedproc dan menjalankannya, dimana proses itu terjadi di Client >atau di 'DbServer' ?
Seperti yang sebelumnya saya katakan, trigger terletak di klien dan diexecute di DbServer. http://www.vbip.com/books/1861003064/chapter_3064_01.asp Stored procedures are more efficient than SQL statements, when executed from a program. The reason why this is true is that when the stored procedure is created and saved it is compiled. During the compilation process, SQL Server creates and optimizes an execution plan for the stored procedure. Also, once a stored procedure is executed, it is placed in SQL Server cache. This means that subsequent executions are executed from cache, which also provides improved performance. So bila kita pass sql statement juga terjadi hal demikian. Bedanya pada StoredProc, si DBServer sudah lebih dulu nyiapain resource. >Pertanyaan kedua, apabila client mengedit suatu table yg ada >trigernya, mana yg memprosesnya Client atau 'DbServer' ? Inilah yang rancu dari anda. DbServer tidak selalu memiliki StoredProcedure. Jadi jangan hanya berfokus pada dbms yang mahal dan memiliki StoredProc (aka MSSQL dan Oracle) tapi juga pada misal MySql. >Pertanyaan ketiga yg mengatur user rights and management itu dimana >Client atau 'DbServer' ? user rights dan management dari apa? bila user right dan management akses database, maka dbms yang mengaturnya. jangan samakan dengan user righst dan managements aplikasi buatan developer. >Pertanyaan keempat kalau secara logika storedproc itu ada di client >lalu bagaimana dgn SP system yg menangani soal sekuritas user ? Lagian sekuritas user dari apa juga nih? bila sekuritas user dalam mengakses database, maka itu kembali diatur oleh dbms-nya. sekali lagi jangan samakan dengan securitas user dari aplikasi, karena ini lagi2 di buat sendiri oleh software developer. >ngak semua SP itu ditrigger dr client misal dgn MsSQL ada SP yg bisa >dijalankan secara otomatis. http://www.woodger.ca/archmult.htm In modified 2-tier Model, A common approach that is used to improve business logic reusability is to place the business logic into triggers or stored procedures on the database. Validations are performed by calling an appropriate database stored procedure. In addition, dependent logic can be initiated by a trigger in the database. For example, the business logic might dictate that whenever a requisition is updated to "approved", a purchase order should automatically be created. This business rule could be effectively implemented with a database trigger on the requisition table. SP tersebut berhubungan dengan aplikasi tidak? Bila tidak, maka bukan bagian dari proses aplikasi. >Tapi memang C/S itu 2tier, i agree with you. >Dan SP itukan dibuat oleh vendor dr DBMS utk database programming, dan >kalo dlm konser 3-tier emangnya semua proses server ada yg bisa jalan >sendiri kalo ngak dipicu oleh client request ? Saya tidak men-state ini loh. Yang akan saya state adalah dalam 3/N-Tier, App. Server dapat melakukan proses/business logic yang automatis tanpa dipicu oleh client request. Proses di DBServer tetap tidak bisa jalan sendiri, biarpun menggunakan SP juga. >Jadi memang business rules di taruh di 'DbServer' dlm bentuk SP.Nah Diatas sudah tertulis, apa tujuan kita memakai SP dalam 2-Tier application yaitu meningkatkan usability 2-Tier. Artinya, tanpa SP pun suatu aplikasi dapat disebut 2-Tier, tentu bila memenuhi kriteria lainnya. >seiring perkembangan dimana data semakin lama semakin banyak baru >keliatan bahwa walaupun server sekuat apapun pasti ngak akan tahan utk >menangani workloadnya. Itu sebabnya dibuat 3-tier, dibuat satu layer >lagi utk menghandle workloadnya. setuju >Lagian siapa yg bilang Server di C/S itu adalah businessLogic atau >App.Server. Kan semuanya tau Server di C/S itu DbServer. Lah itu anda tulis begini: "Setau saya sih konsep dasar dr 'common' C/S itu adalah memindahkan proses di server. >Kalo misalnya business rule tdk ditaruh diserver mau ditaruh dimana ? http://www.woodger.ca/archmult.htm The traditional 2-tier model is fairly simple: client applications access the database directly. Related applications access the database directly (e.g. a separate Accounting application might need to access the Sales application's database). In a traditional 2-tier application, all processing is done in the client application -- the database serves only as a repository for data. "Logic" in the server might include simple constraints (e.g. foreign key constraints, not null constraints). These database constraints disallow operations that would cause obvious data integrity problems. >apakah di client ? kalo diclient apa bedanya ama DesktopApp. Mungkin maksud anda aplikasi yang menggunakan Desktop Database? Bila begitu, ya jelas beda karena aplikasi tipe ini masuk dalam kategori 1-Tier. Mengapa? Karena dia tidak memiliki dbserver yang secara logika terpisah (Ada di e-mail saya sebelum ini). Anda sepertinya hanya melihat pada dbms yang kaya. Tidak melihat pada dbserver yang miskin alias tidak memiliki stored proc. Saya tebak mungkin anda dulu belajar dari dBase/Paradox/Access langsung loncat ke SQLServer dan langsung ditekan untuk membuat aplikasi dengan pola Stored Proc selalu. >C/S itu yg menjalankan prosesnya adalah server dlm hal ini DbServer Sesuai artikel di atas, tidak semua C/S melakukan apa yang anda state disini. Nah saya balik pertanyaan anda, misalkan saya mengembangkan aplikasi "Sistem Informasi Pegawai" dengan menggunakan MSSQL sebagai DBServer tanpa sedikitpun menggunakan fasilitas StoredProc alias saya meletakkan semua proses bisnis di client yang nantinya saya deploy di setiap komputer kantor. Apakah aplikasi saya ini tergolong C/S atau tidak? >bukan AppServer. Tapi sekarang ini ngak semua aplikasi C/S itu semua >proses di jalankan di 'DbServer', krn 'DbServer'nya ngak ada yg kuat, >atau tdk sesuai dgn 'pengorbanan' yg diberikan. Ya karena itulah maka dikembangkan 3/N-Tier. --- donie `hidupku kan kuhabiskan dengan caraku` ------------------------ Yahoo! Groups Sponsor ---------------------~--> Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada. http://www.c1tracking.com/l.asp?cid=5511 http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/i7folB/TM ---------------------------------------------------------------------~-> Berlangganan: [EMAIL PROTECTED] Stop Berlangganan: [EMAIL PROTECTED] Keluhan Milis(Unbouncing,spam,dll): [EMAIL PROTECTED] Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
