banjalukaforum.com https://www.banjalukaforum.com/ |
|
SQL server+ Mysql https://www.banjalukaforum.com/viewtopic.php?f=18&t=65329 |
Stranica 1 od 2 |
Autoru: | MuskoBre [ 16 Nov 2014, 10:29 ] |
Tema posta: | SQL server+ Mysql |
Da cujem misljenja ili prijedloge. Firmw XY ima maloprodaju,i u tu svrhu koristi softver koji u pozadini ima bazu na SQL serveru,koja izmedju ostalog prati i stock level svakog artikla. Dalje,firma zeli da ima i e-commerce site,koji moze da koristi iskljucivo mysql bazu. Ukoliko bi baza od e-commerce sajta imala i field interne sifre,identicno kao i u bazi od maloprodaje, da li bi moglo da funkcionise da ove dve baze putem nekih trigera i stored procedura obavjestavaju jedna drugu kad se stock level (broj),datog artikla te i te sifre promjeni,sto kroz maloprodaju,sto kroz e-commerce? Pada li na pamet nekome neko drugo rjesenje? |
Autoru: | giometar [ 16 Nov 2014, 10:47 ] |
Tema posta: | Re: SQL server+ Mysql |
Sto ne bi moglo, napravis linked server u sql management studiu i radis sta hoces kroz funkciju openquery('linked server', 'query'). Evo ti ovdje detaljnije opisano https://www.packtpub.com/books/content/ ... erver-2008 |
Autoru: | MuskoBre [ 16 Nov 2014, 10:50 ] |
Tema posta: | Re: SQL server+ Mysql |
Nemam pristupa SQL serveru, zato i pitam,a nemam ni iskustva sa istim,nisam bas database guy:) |
Autoru: | giometar [ 16 Nov 2014, 11:04 ] |
Tema posta: | Re: SQL server+ Mysql |
Onda se sprijatelji sa njihovim DBA-om ![]() |
Autoru: | Piro [ 16 Nov 2014, 13:23 ] |
Tema posta: | Re: SQL server+ Mysql |
Joomla 3 moze preko php drivera da komunicira sa SQL serverom i na nju mozes staviti ecommerce modul, problem je sto je bagovito sve pa moras svaki modul i polje u bazi modifikovati da bi to radilo. Imas isto nopCommerce koji native ima podrsku za SQL, ali je ASP. Nedavno sam radio nesto slicno kao sto si opisao, naisao na toliko problema izmedju tih tehnologija, da sam na kraju odustao zbog moguceg ulozenog vremena, a malo para ![]() Firma je isto imala neki svoj menagment softwer, koji vrsi unos proizvoda, medjutim sve je bilo zbrljano pa si mogao uzeti kupiti procesor od 17 incha, tako da su bile velike prerade kako u PHPu, tako i u njihovim bazama. |
Autoru: | MuskoBre [ 16 Nov 2014, 13:44 ] |
Tema posta: | Re: SQL server+ Mysql |
Baza za maloprodaju je ok,bazu za e-commerce ja radim,tako da mislim da bi sinhronizacijom ova dva unique fielda interne sifre proizvoda,koji vec postoje u prvoj bazi,to trebalo da radi. |
Autoru: | Piro [ 16 Nov 2014, 15:34 ] |
Tema posta: | Re: SQL server+ Mysql |
Mozes li napraviti da ecommerce koristi ista polja u bazi kao i taj program od firme? Onda bi se uneseni proizvodi reflektovali na stranicu automatski. Kod ovih sto sam vidio stara njihova solucija je bila da php vadi direktno iz baze preko PDO drivera proizvode, kesira ih u .htm i te htm cache fajlove vuce na server i prikazuje ih u joomli. |
Autoru: | MuskoBre [ 16 Nov 2014, 18:05 ] |
Tema posta: | Re: SQL server+ Mysql |
Samo cu dodati field interne sifre proizvoda,trebalo bi da bude dovoljno |
Autoru: | giometar [ 16 Nov 2014, 18:14 ] |
Tema posta: | Re: SQL server+ Mysql |
Kako ces sinhronizovati baze? |
Autoru: | Piro [ 16 Nov 2014, 18:37 ] |
Tema posta: | Re: SQL server+ Mysql |
Pa samo ce dodati u istu bazu polja i na nju nakaciti ecommerce i vec postojeci software od prodavnice? |
Autoru: | MuskoBre [ 16 Nov 2014, 20:21 ] |
Tema posta: | Re: SQL server+ Mysql |
Vid sad giometra sto me zajebaje.Ja pitam jel se moze onako izvesti sinhronizacija,kroz neke trigere,kad god se u jednoj od bazi field stock level dekrementuje,da se to odmah sinhonizuje sa drugom bazom,on kaze da to moze,i sad me pita kako cu to uraditi?:)) |
Autoru: | giometar [ 16 Nov 2014, 20:53 ] |
Tema posta: | Re: SQL server+ Mysql |
Reko ako nemas pristup SQL Serveru, da povezes te dvije baze, kako ces trigerom gadjati onu drugu bazu? |
Autoru: | MuskoBre [ 16 Nov 2014, 21:11 ] |
Tema posta: | Re: SQL server+ Mysql |
To ce uraditi firma koja ima pristup,mene je zanimalo moze li to tako ili ne.Ja cu manje vise isto to uraditi sa strane e-commerce baze. |
Autoru: | Metheny [ 05 Dec 2014, 10:15 ] |
Tema posta: | Re: SQL server+ Mysql |
Možda je malo kasno za odgovor, ali evo ti neke ideje: Trigeri nisu najsrećnije rješenje za ovakav tip sinhronizacije baza... Prije ili kasnije imaćeš probleme zbog recimo pucanja veze između 2 database servera, pa triger neće odraditi upis u bazu u firmi. Ili ćeš imati situaciju da istovremeno neko preko web shopa i direktno iz firme mijenju stanje zaliha nekog artikla, pitanje je ko tada ima "prvenstvo"? Postoje 2 načina da se ovo odradi kako bi izbjegao glavobolje i probleme u sinhronizaciji baza: 1. Replikacija ili neka slična tehnika sihronizacije baza 2. Svi podaci ti budu u jednoj bazi, znači da se i iz firme i sa web shopa kačiš na 1 bazu Druga varijanta je svakako puno jeftinija, ali zahtijeva da riješiš konekciju sa web shopa prema SQL server bazi (recimo, koristi ODBC). |
Autoru: | MuskoBre [ 05 Dec 2014, 10:56 ] |
Tema posta: | Re: SQL server+ Mysql |
Druga varijanta je malo sporna,malo vise sporna,zbog razlicitog dizajna bazi,tj samih polja.Ici cemo preko web servisa,obe baze se nalaze pod istim domenom sto se tice ip opsega. |
Autoru: | Metheny [ 05 Dec 2014, 14:17 ] |
Tema posta: | Re: SQL server+ Mysql |
MuskoBre je napisao: Druga varijanta je malo sporna,malo vise sporna,zbog razlicitog dizajna bazi,tj samih polja.Ici cemo preko web servisa,obe baze se nalaze pod istim domenom sto se tice ip opsega. Druga varijanta ne mora uopšte biti sporna: Držiš sve u istoj bazi, ako ti je problem dizajn i struktura tabela onda napravi "duple" tabele... Web sajt upisuje u svoje tabele, aplikacija iz firme upisuje svoje tabele... Interna SQL server replikacija (unutar iste baze!) ili neki ETL job ti mogu syncati te tabele međusobno, po potrebi i transformisati podatke... Lokacija DB servera u mreži uopšte nije bitna za ovu priču, tj. to da li su u istom domenu, u istom IP opsegu... Sve se to da podesiti, bitniji ti je način na koji se syncaju podaci između baza ako već koristiš 2 baze... |
Autoru: | MuskoBre [ 05 Dec 2014, 15:35 ] |
Tema posta: | Re: SQL server+ Mysql |
Za drugu varijantu bih se morao baciti na php rewrite,za koji nemam vremenskih resursa.Za sad idemo sa sync izmedju 2 baze, samo 2 fielda,interna sifra,i stock level,moguce da cemo morati i ubaciti dodatni layer u vidu nekog servisa,mada bih ja vise volio da ide samo baza ka bazi.Btw,radi se o 2000+ proizvoda. |
Autoru: | Besparica [ 10 Jul 2017, 14:27 ] |
Tema posta: | Re: SQL server+ Mysql |
Koristim MySql bazu i pokusavam primjeniti FIFO metodu na tabele. U tabelama imam datetime kolonu u kojoj se upisuje vremenski zig uz svaki podatak. Ideja je da napravim before insert ili after insert triger, koji bi provjeravao broj redova i ako je red visi od limita, on bi brisao red sa najstarijim vremenskim zigom. Tabela i triger na kom testiram ideju: Kod: CREATE TABLE `probnafifo` ( `idprobnaFIFO` int(11) NOT NULL AUTO_INCREMENT, `tekst` varchar(45) DEFAULT NULL, `Vrijeme` datetime DEFAULT NULL, PRIMARY KEY (`idprobnaFIFO`) ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 Kod: CREATE DEFINER=`usysa`@`%` TRIGGER insertFIFO after insert ON usys.probnafifo FOR EACH ROW BEGIN DECLARE rowcount, indeks int default 0; SELECT COUNT(*) INTO rowcount FROM usys.probnafifo; select idprobnaFIFO into @indeks from usys.probnafifo order by Vrijeme limit 1; IF rowcount > 10 THEN delete from usys.probnafifo where idprobnafifo = indeks; end if; END Problem je sto mi izbacuje sledecu gresku: Citiraj: Operation failed: There was an error while applying the SQL script to the database. ERROR 1442: 1442: Can't update table 'probnafifo' in stored function/trigger because it is already used by statement which invoked this stored function/trigger. Izgleda kao da insert zakljuca tabelu i ne dozvoljava brisanje reda. Postoji li nacin da se ovo nekako prejebe? |
Autoru: | giometar [ 10 Jul 2017, 14:59 ] |
Tema posta: | Re: SQL server+ Mysql |
evo jedno objasnjenje sa stack-a za slican problem Citiraj: The symptom is, that you are running an UPDATE (for all rows) inside a INSERT trigger - both modify the table, which is not allowed. probaj before insert |
Autoru: | Besparica [ 11 Jul 2017, 10:29 ] |
Tema posta: | Re: SQL server+ Mysql |
Isto i za before. Prebacicu taj posao na servis koji popunjava bazu... |
Stranica 1 od 2 | Sva vremena su u UTC [ DST ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |