- Fórumok
- Szoftverfejlesztés
- SQL kérdések
- (kiemelt téma)
-
3200 - 3101
6041 - 6001 6000 - 5901 5900 - 5801 5800 - 5701 5700 - 5601 5600 - 5501 5500 - 5401 5400 - 5301 5300 - 5201 5200 - 5101 5100 - 5001 5000 - 4901 4900 - 4801 4800 - 4701 4700 - 4601 4600 - 4501 4500 - 4401 4400 - 4301 4300 - 4201 4200 - 4101 4100 - 4001 4000 - 3901 3900 - 3801 3800 - 3701 3700 - 3601 3600 - 3501 3500 - 3401 3400 - 3301 3300 - 3201 3200 - 3101 3100 - 3001 3000 - 2901 2900 - 2801 2800 - 2701 2700 - 2601 2600 - 2501 2500 - 2401 2400 - 2301 2300 - 2201 2200 - 2101 2100 - 2001 2000 - 1
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
sztanozs
veterán
-
tm5
tag
-
Petya25
őstag
-
1eske
tag
-
sztanozs
veterán
Akkor rakj még bele egy GETDATE()-et inkább és látod a szerver szerinti időt:
SELECT dt, GETDATE() s_dt, var1, var2 FROM t1 WHERE DATEDIFF(second, GETDATE(), dt) >= -5Amúgy én nem a kliens szerinti időt illeszteném be az inserttel, hanem simán a GETDATE()-et:
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO t1 (dt,val1,val2) VALUES (GETDATE(),?,?)");
pstmt.setString(1, v1);
pstmt.setString(2, v2 );
pstmt.executeUpdate();És még némi a TimeZone-ról: http://stackoverflow.com/a/20086589
-
1eske
tag
-
sztanozs
veterán
Próbáld meg plusz mezőbe berakni a datediff-et is, és úgy látod, hogy mit számol:
SELECT dt, DATEDIFF(second, GETDATE(), dt) els, var1, var2 FROM t1 WHERE DATEDIFF(second, GETDATE(), dt) >= -5Esetleg látatlanban még az lehet, hogy a feeding rendszer és az adatbázis nem azonos timezone-on van és ez okozhat problémát.
-
1eske
tag
Ez is mindent visszaad.

Így rakom bele a DB-be a rekordokat:
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO t1 (dt,val1,val2) VALUES (?,?,?)");
pstmt.setTimestamp(1, java.sql.Timestamp.valueOf(java.time.LocalDateTime.now()) );
pstmt.setString(2, v1);
pstmt.setString(3, v2 );
pstmt.executeUpdate();Lehet, hogy nem timestamp-pel kéne berakni?
-
tm5
tag
-
sztanozs
veterán
-
1eske
tag
Sziasztok!
Szeretném lekérdezni azokat az elemeket egy táblából ami a lekérdezés időpontjától számítva 5 mp-ig visszamenőleg lettek létrehozva.
A tábla így néz ki:
CREATE TABLE t1 (dt DATETIME,var1 VARCHAR2(50),var2 VARCHAR2(50))Ezt az alábbi lekérdezéssel tenném meg:
SELECT dt, var1, var2 FROM t1 WHERE dt > DATEADD(second, -5, getdate())A baj ezzel a lekérdezéssel, hogy minden rekordot kiad.
Kiírattam a dt értékét is, de jónak tűnik a formátuma: 2016-10-06 11:20:27.511
Mi lehet a baj?
-
Petya25
őstag
Valakinek tippje az alábbi esetre MS-SQL-ben?
Adott cikk ára időnként változik és egy adott naptól érvényes a következő árváltozásig.
Na az eladáshoz kellene utólag hozzákeresnem az eladás napi érvényes árat.
Értelem szerűen egy cikkhez tetszőleges számú ár lehetséges (akár csak 1 is lehet) , de a megfelelőt kellene kitalálni.Két tábla, cikkek eladás és cikk árak.
eladás
cikk, elad_datum
alma, 2016.07.01
és
cikk árak
cikk, ar, erv_datumtol
alma, 100, 2015.12.01
alma, 110, 2016.02.01
alma, 120, 2016.06.01 --ez kellene
alma, 150, 2016.09.01Valami elad_datum-tól kisebb listán, csökkenőben top 1-en gondolkodom...
-
Froclee
őstag
-
MineFox54
őstag
-
DS39
nagyúr
Szia!
select tk.raktszam, tk.cim, tk.szerzo, tk.tantargy, tk.ar, cs.megjegyzes, cs.osztaly
from tankonyv tk
join csoportok cs on cs.raktszam = tk.raktszam
where cs.osztaly = '$osztaly'off: tök jó, ez az új programkód formázó, tudom nem mostani újítás, de ez tényleg hasznos fejlesztés volt. Köszi PH! csapat

-
MineFox54
őstag
Sziasztok!
Megint kérdésem lenne.
Van egy ilyen lekérdezésem.
SELECT raktszam,cim,szerzo,tantargy,ar FROM tankonyv un WHERE raktszam in (SELECT raktszam FROM csoportok WHERE osztaly = '$osztaly')
Ez így működik, de én ki szeretném írni a tankönyv adatai mellé a csoportok táblában lévő megjegyzés mező tartalmát is.
Ezt hogyan kéne csinálnom? -
MineFox54
őstag
-
bambano
titán
-
MineFox54
őstag
-
sztanozs
veterán
-
MineFox54
őstag
-
bambano
titán
jaja, ezt a szót kerestem sokáig

-
fordfairlane
veterán
-
bambano
titán
-
bambano
titán
de neki a tól-ig-ja nem év, hanem gimnáziumi osztály "évadjelző" vagy hogy mondjam.
tehát 1-12 közötti szám. azt akarta megtudni, hogy milyen könyveket adhat a tizenegyedik évfolyamra járó diákoknak matekból. -
fordfairlane
veterán
-
bambano
titán
mert ha az évtől és az évig varchar, akkor az évtől<='11' aposztrófosan szintaktikailag helyes.
de ha stringként hasonlítod össze a 9-et meg a 11-et, akkor mivel a 11 1-essel kezdődik, ezért az kisebb, mint a 9. ezért nem talált neked semmit. numerikusan meg a 9 a kisebb, mint ahogy te hitted.
-
MineFox54
őstag
-
rum-cajsz
őstag
-
sztanozs
veterán
-
bambano
titán
Postgresql:
CREATE TABLE tankonyv (evtol integer,evig integer,tantargy text);
CREATE TABLE
INSERT INTO tankonyv SELECT 9,12,'Matematika' ;
tmp=> SELECT * FROM tankonyv WHERE evtol<='11' AND evig>='11' AND tantargy='Matematika';
evtol | evig | tantargy
-------+------+------------
9 | 12 | Matematika
(1 row)
tmp=> SELECT * FROM tankonyv WHERE evtol<=11 AND evig>=11 AND tantargy='Matematika';
evtol | evig | tantargy
-------+------+------------
9 | 12 | Matematika
(1 row) -
MineFox54
őstag
-
rum-cajsz
őstag
Értelek, akkor viszont nem az adatbázisban van a hiba, mert ez nálam tökéletesen működik:
CREATE TABLE tankonyv (evtol NUMBER,evig NUMBER,tantargy VARCHAR2(10));
INSERT INTO tankonyv SELECT 9,12,'Matematika' FROM dual;
SELECT * FROM tankonyv WHERE evtol<='11' AND evig>='11' AND tantargy='Matematika';
DROP TABLE tankonyv PURGE; -
bambano
titán
-
MineFox54
őstag
-
MineFox54
őstag
-
bambano
titán
-
rum-cajsz
őstag
-
MineFox54
őstag
Sziasztok!
Van egy ilyen lekérdezésem.
SELECT * FROM tankonyv WHERE evtol<='$osztaly' AND evig>='$osztaly' AND tantargy='$tantargy'Ha az evtol-nél az adatbázisban mondjuk 9 van, az evig-nél 12, a tantárgy változó értéke Matematika, és az osztály értéke 11, akkor nem találja meg a könyvet.
Miért? -
martonx
veterán
Hopp, és közben meg is csináltam.
Ez lett a végső megoldás:
WITH AreasCTE AS
(
SELECT AreaID, AreaName, ParentAreaID,
cast(AreaName AS varchar(255)) AS AreaPath
FROM dbo.Area
WHERE ParentAreaID is null
UNION ALL
SELECT a.AreaID, a.AreaName, a.ParentAreaID,
cast(s.AreaPath + ' > ' + a.AreaName AS varchar(255)) as AreaPath
FROM Area a
INNER JOIN AreasCTE s ON a.ParentAreaID = s.AreaID
)
SELECT AreaID, AreaPath
FROM AreasCTE ac
ORDER BY 1Viszont a hülye SQL fiddle meghal rajta, miközben lokális SQL szerveren szépen működik, és ez a lényeg.
-
martonx
veterán
Sziasztok,
A probléma szemléltetésére csináltam egy SqlFiddle-t. Csináltam egy rekurzív select-et (ami valószínűleg nem is az igazi), ráadásul nekem nem is ilyen végeredmény kellene, de kiindulásnak talán jó.
Szóval a példában adottak országok, megyék, városok. A példából nekem valami ilyet kellene kihoznom:AreaId, AreaFlow
4, Canada > Saskatchewan > Saskatoon
6, United States > Florida > MiamiMit kellene a rekurzív selectemen módosítani, hogy ezt a kimenetet adja?
-
DopeBob
addikt
-
bpx
őstag
Akkor viszont:
with st as
(
select 'K10' as text from dual union all
select 'K12' as text from dual union all
select 'K13' as text from dual union all
select 'K99' as text from dual
),
data as
(
select 1 as value from dual
)
select
data.value,
st.text
from
st,
data
order by
data.value,
st.text
;
VALUE TEXT
---------- ----
1 K10
1 K12
1 K13
1 K99 -
DopeBob
addikt
-
bpx
őstag
-
DopeBob
addikt
Sziasztok,
PL\SQL-ben, sima select lekérdezéssel meg lehet valahogy oldani hogy egy lekérdezés eredményénél minden sorból 4-et csináljon, mind a négyhez más statikus szöveget rendeljen? DB kapcsolat nincs, kliens programon keresztül lehet ennyit megtenni, és a másik program betöltőfájlját kellene így előállítani.
hl a lekérdezés ered ménye mondjuk egy mező 1, akkor nekem ez kellene
1; K10
1; K12
1; K13
1; K99 -
tm5
tag
Hát inner join esetén csak azok a rekordok jönnek vissza amelyek mindkét táblában szerepelnek.
Szerintem inkább egy left outer join kellene ahol a baloldali tábla (a) olyan, hogy minden ügyfél benne van:SELECT *
FROM a
LEFT OUTER JOIN b ON (a.id = b.id)Ha pedig olyan a két tábla, hogy mindegyikben lehet olyan ügyfélrekord, ami nincs a másikban, akkor a LEFT helyére FULL-t kellene írni.
-
PowerBuldog
veterán
Sziasztok!
Van 2 táblám. Az ID mindkettőben a kulcs, így ahol az azonos ott ugyan arról az ügyfélről beszélünk.
Úgy szeretném össze olvasztani őket, hogy az ügyfél minden adata a 2 táblából látszódjon egy táblában.
Régen használtam már SQL-r, valami INNER JOIN utasításra emlékszem, de már nem tiszta mit mivel kell csinálni.
Tudna valaki segíteni? -
#30734848
törölt tag
-
bambano
titán
-
bambano
titán
ha már piszkos dolgokat művelünk

itt egy kezdemény postgresql-ben:select szo,s.a from worduniq,generate_series(1,char_length(szo)) as s(a);tmp=> select * from worduniq;
szo
-----------------------
123456123
123456123223453473456
229898012342
(3 rows)
szo | a
-----------------------+----
123456123 | 1
123456123 | 2
123456123 | 3
123456123 | 4
123456123 | 5
123456123 | 6
123456123 | 7
123456123 | 8
123456123 | 9egy substring, egy distinct select és az eredmény összepakolása van hátra. ezeket, egyszerűségük folytán, az olvasóra bízzuk

-
bpx
őstag
Hát én egy regexpet ilyenkor meg nem írok már, de a sima SQL még belefér egy hosszú nap után:
create table t1 (text varchar2(20 char));
insert into t1 values ('123456123');
insert into t1 values ('12342');
insert into t1 values ('229898012342');
select text from t1;
TEXT
--------------------
123456123
12342
229898012342
select
text,
listagg(c, '') within group (order by c) as uniq_c
from
(
select
distinct text, substr(text, level, 1) as c
from
t1
connect by level <= length(text)
)
group by
text
;
TEXT UNIQ_C
-------------------- --------------------
12342 1234
123456123 123456
229898012342 0123489 -
Apollo17hu
őstag
-
balagedebr
tag
Sziasztok!
Valakinek nincs meg esetleg a 'SQL-Iekérdezések földi halandóknak' című könyv CD melléklete?
Köszi!
-
Novics
senior tag
-
bambano
titán
-
Novics
senior tag
-
#30734848
törölt tag
Az előbb rosszul fogalmaztam, elnézést, csak már nem volt időm még egyszer szerkeszteni. Ez a számsor két mezőnek az összefűzéséből jön létre (Az számok egytől nyolcig információt jelölnek.). Ezért van szükség az ismétlődések kiszűrésére

Szóközzel lehet érthetőbb:
('1 2 3 4 1 2') -- > ('1 2 3 4')
Tehát az a kérdés, hogy mivel lehet a számok ismétlődéseit kiszűrni, hogy minden érték csak egyszer szerepeljen.
-
bpx
őstag
-
#30734848
törölt tag
Ha van egy olyan karakterláncom, amely csak számokat tartalmaz pl: '123456123'.
Oracel sql-ben mivel tudom visszaadni az egyedi értékekeket?
Tehát azt szeretném látni ebből a listából, hogy '123'.
Erre mi lehet a legegyszerűbb megoldás? Regexp_substr?Előre is köszönöm!
-
tazkir
csendes tag
-
Louro
őstag
-
martonx
veterán
-
tazkir
csendes tag
Sziasztok,
Bármilyen megoldás érdekel, de semmit nem konyítok a programozáshoz.
Van egy weboldal, ahol le lehet kérdezni egy listát, de sajnos csak 20 sort hoz be egyszerre.
Hogy tudnám egyszerűen elérni, hogy az általam leszűrt kategóriára az összes találatot lehozza egy oldalra. Ne kelljen a következő oldal gombot nyomkodni, mert, akár 20 oldal is lehet.üdv,
-
Kommy
veterán
-
Kommy
veterán
Lehetséges olyan lekérdezést írni, hogyha az egyik feltétel igaz, mondjuk 1 az értéke akkor az egyik oszlopba másik adatot írjunk.
Egy példa, egy javítást egyeztetünk az ügyféllel, ha kéri a javítást akkor a megjelenítendő összeg az alkatrész + a javítás összege, de ha nem kéri a javítást akkor egy előre megállapított összeg. És a fontos az lenne, hogy nekem vagy az összeget vagy a z előre megállapított összeget írná ki.
-
Louro
őstag
Az a THEN 1, azért problémás és igyekeztem röviden megúszni a kódsort. A THEN után is még 10 sor legalább, amiből az eredmény származik. Megoldhatnám, hogy lekezelek külön mindent, de akkor a THEN utáni részt kellene sokszor bemásolni.
-
Apollo17hu
őstag
-
Louro
őstag
-
martonx
veterán
-
Louro
őstag
Sziasztok!
Olyan lehet case-ben vizsgálni, hogy
case when 1=1 and 2=2 and 3=3 and
case when 4=4 and 5=5 then 'true' else 'false' end then 'jó' else 'nem jó' endHasonló vizsgálatot kellene végeznem, de nem találtam sehol se megoldást rá.
Lehetne rengeteg egymásban ágyazott case-zel megoldani, de reméltem, hogy pár sorban ezt letudom.
Nektek van egyéb ötletetek?
-
Louro
őstag
Szia,
powershell elindul. Régen még tanultam is. Megpróbálom elsőként abban megoldani.
Nem ragaszkodok a Windows saját ütemezőjéhez, de mivel nem vagyok admin, nem vagyok DBA, így korlátozottak a lehetőségeim. A DBMS Scheduler-ért küzdünk, de az nem 100%, hogy meglesz. Így a meglévő eszközökhöz nyúlnék.
-
bpx
őstag
Kell egy adatbázis job, ott van rá az adatbázis saját ütemezője. Mi a baj azzal?
DBMS_SCHEDULER helyett van DBMS_JOB is, de az a régi módszer, nem ajánlom, arról le kellene szokni.Vagy ha nagyon Windows jobot akarunk (inkább ne), akkor kb. ennyit kell beütemezni:
set ORACLE_HOME=...
set ORACLE_SID=...
set PATH=%ORACLE_HOME%\bin;%PATH%
sqlplus user/password @script.sql -
Pilács
senior tag
-
Froclee
őstag
-
Louro
őstag
Sziasztok!
Lehet elég bagatel kérdést fogok feltenni, de hátha van rá megoldás. (Vagyis van, mert Excel makróval meg tudom oldani.)
Adott egy .sql fájl. Benne rengeteg trigger (insert, update, temptáblák létrehozása,...). Van arra lehetőség DBMS Scheduler nélkül valahogy beütemezni?
Környezet: Oracle
Elérhető programok: Toad és PL SQL Dev 9Windows ütemező nem tudom milyen nyelvet igényel, de lehet van mégegyszerűbb megoldásotok is. Az Excel makróval az a gondom, hogy akkor az Excelt teljesen kilövöm a gépen, ha fut.
Válaszotok előre is köszönöm.
-
martonx
veterán
Hát nem SQL-ből
Azaz fogod és írsz egy PowerShell scriptet mondjuk, ami ütemezve fut (Windows scheduler ugye). És a scripten belül azzal kezded, hogy letöltöd a file-t, ha ez sikerült, akkor tovább mész, és üríted a temp táblát bulk insertelsz. Ha ez sikerült, akkor mehet a végleges betöltés. -
Pilács
senior tag
-
bambano
titán
-
Pilács
senior tag
Sziasztok, elakadtam. Segítséget kérek:
Van egy weboldal, ahonnan le kell szednem egy .csv fájlt, majd annak tartalmát szerektálva betölteni egy táblába. (MS SQL alól)
PowerShell utasítással leszedem a fájlt SQL alól (EXEC xp_cmdshell 'powershell .....'), majd létrehozok ideiglenes táblát, abba BULK INSERT, majd ebből kiválogatva beszúrom egy táblába, amit előtte kiürítek.
De az a baj, hogy van amikor nem jön le a fájl, és a procedúra kiüríti a végső táblát, és nem tölt be semmit. Azt kellene megoldanom, hogy ha nem elérhető a fájl, akkor próbálkozzon mondjuk 3x letölteni, majd ha ez után is sikertelen a letöltés, akkor álljon meg a művelet, minden adat marad a végső táblában. JOB-ot csináltam belőle, óránként kellene frissíteni. Ez megy is, ha a fájl letölthető, de van hogy 1-2 óráig üres a tábla. Hogyan tudom kezelni SQL alól a letöltési hibát, valamint megoldani, hogy 3x próbálozzon újra, és ha sikertelen, akkor majd a következő JOB periódusidőben újra megpróbálja?
Köszönöm!
-
Thrawnad
senior tag
Nos php alatt kellene.
Itt a kód részlet.
Az első része fut a második amibe bele tettem amit írtál az nem.$csekkolotabla = mysql_query( "SELECT * FROM bejelentkezesek where nap='$ma' and honnan = '1' and mikor=(select max(mikor) from bejelentkezesek where nap='$ma' and honnan = '1') ");
$sor_1 = mysql_fetch_array( $csekkolotabla ) ;
$mikor_1 = $sor_1[mikor];
$csekkolotabla = mysql_query( " SELECT * FROM bejelentkezesek WHERE mikor IN (SELECT mikor FROM bejelentkezesek WHERE DATE(nap) = CURRDATE() AND honnan = '1' ORDER BY mikor DESC LIMIT 3)");
$sor_1_1 = mysql_fetch_array( $csekkolotabla ) ;
$mikor_1_1= $sor_1_1[mikor];Így tudsz segíteni?
-
fordfairlane
veterán
SELECT * FROM bejelentkezesek WHERE mikor IN (SELECT mikor FROM bejelentkezesek WHERE DATE(nap) = CURRDATE() AND honnan = '1' ORDER BY mikor DESC LIMIT 3)(PHP alatt lehetőleg NE használd a mysql_query függvényt!)
-
DS39
nagyúr
Szia!
Én így csinálnám:
select top 3 *
from tablanev
where (..egyéb feltételek..)
order by datum descközben eszembe jutott mysql-ben nincs top 3, akkor limit 3 a végére, ahogy a kolléga írta.
lényege az lett volna, hogy felesleges a belső select, ha a legutolsó (vagy a 3 utolsó) bejelentkezés adatait szeretnéd lekérni. -
martonx
veterán
-
Thrawnad
senior tag
Sziasztok lenne egy kérdésem!
Nem vagyok igazán járatos az SQL-ben, ami kellett eddig össze ollóztam.
Most viszont kellene egy lekérdezés.
A táblából a feltételnek megfelelő legnagyobbat ki tudom kérni:mysql_query( "SELECT * FROM bejelentkezesek where nap='$ma' and honnan = '1' and mikor=(select max(mikor) from bejelentkezesek where nap='$ma' and honnan = '1') ")Nekem az egyel, illetve kettővel kisebbre is szükségem lenne.
Köszönettel:
Thrawnad
-
Novics
senior tag
Access nem ismeri, de van helyette MID, ami ugyanezt tudja.

-
Apollo17hu
őstag
-
Novics
senior tag
-
martonx
veterán
-
Novics
senior tag
Megint van egy buta kérdésem.

Azt hogyan tudom elegánsan megoldani SQL-ben, hogy egy string első 3 karakterét ne vegye figyelembe. Favágó megoldás van RIGHT([id], (LEN([id])-3)), de gondolom van ennél szebb, hatékonyabb is. (Mondjuk még nem próbáltam ki, hogy működik-e.
) -
Novics
senior tag
Akkor már csak 80%, hogy szar az adatbázisom?

Köszönöm a "fejmosást". Sikerült megoldanom a dolgot egy új lekérdezés létrehozásával, ami nem is volt bonyolult. Bár az még nem megoldott, hogy legyen egy nyitó, és minden sorban adja hozzá/vonja ki a változást, de ez nem is feltétlenül szükséges, a lényeg, hogy az aktuális készletet kiszámolja. -
martonx
veterán
-
Novics
senior tag
Köszi a tippet.
Már telepítem is a VS-t.Így néz ki a kapcsolati ábra. Ilyenre gondoltál, nem?

Sok dolog amúgy nincsen benne, nem egy túl bonyolult valami, de később lehetne bővíteni, inkább, mint az x-edik excel tábla. Meg ebbe kevésbé tudnak belenyúlni, jobban el lehet előlük dugni a dolgokat.Egyetemen volt DB 2 félév is, de igazából a normálformák, meg a SELECT, FROM, ORDER BY, GROUP BY, WHERE... aztán kb ennyi volt. DB tervezést kb nem is tanultunk.
-
martonx
veterán
Mondjuk Microsoft vonalon maradva Visual Studio LightSwitch 2015 (szólok előre, hogy ingyenes). Jobb, mint az Access, mert:
1. bármilyen teljes értékű SQL lehet alatta, mondjuk MS SQL
2. webes kimenetet generál neked, azaz Access el ellentétben bárhol bármikor, akárhány konkurens userrel tudjátok használni.Nem Microsoft vonalon is van egy csomó ehhez hasonló eszköz.
"A táblák megvannak, formok is vannak bevitelhez, egyszerűbb lekérdezésekhez is, csak ez a qrva "excel" nem megy a készlettel."
No ez az, dobd ki az egész eddigit, és írd újra azzal a megközelítéssel, amit fentebb mondtam. Bármilyen eszközzel is fogsz végül nekiállni, amit mondtam mindegyikre igaz lesz. 100%, hogy alapjaiban elhibázott az adat tábla struktúrád, és így nyilván a rájuk épülő formok is. -
Novics
senior tag
Tudom, hogy nagyon excelben gondolkozok, de eddig inkább azt használtam, így nehezen tudok elvonatkoztatni tőle.
Hogy nem az access a tuti, azt én is tudom, de kb még ez a legjobb az elérhető eszközök közül. De szívesen fogadom a tippet, hogy mivel lenne érdemes próbálkozni, ami ingyenesen - és legálisan
- használható.szerk: A táblák megvannak, formok is vannak bevitelhez, egyszerűbb lekérdezésekhez is, csak ez a qrva "excel" nem megy a készlettel. A képet csak illusztrációnak raktam be amúgy, nem egy excelt várok a végén, meg is kell bitre pontosan így kinéznie.
-
martonx
veterán
-
martonx
veterán
Szerintem teljesen rossz az alapállásod a feladathoz. Neked Accessben alap formokat, táblákat kell definiálnod, amiknek közük nincs a fejedben élő Excelhez.
Csinálsz egy formot, ahol bekéred a készlet mozgást, utána pedig Access SQL-el kezeled a többit. Ugyanakkor szólok, hogy szvsz nagyon nem az Access a megfelelő eszköz erre így 2016-ban, bár programozási tudás híján talán mégis (bár még akkor se, bár akkor semmi megoldás sem jó
). -
Novics
senior tag
Mivel olyan rendesek vagytok, hogy segítetek, azért hozok még egy hülye kérdést.

Egy készletnyilvántartó "programot" - access - kell készítenem, és egy elég hülye kimenetet várnak el.

A készlet okoz gondot. Először a nyitót kell megadni, aztán meg a bevételnél hozzá kell adni, a kiadásnál ki kell vonni, és ezt így görgetni. Excelben ugye könnyű, pl: G7=G6+E7-F7. E7-F7 egyszerű, de hogyan tudom megadni, hogy előző rekord készletértékéhez adja hozzá?Ami még tovább bonyolítja a dolgot, hogy a táblában lesz több gyerek, és nekik több ruhafajtájuk, de nekem külön kell, hogy Roza Lindának a piros bugyogói hogyan változtak, meg külön a kék mackónadrágjai, és ugyanez a többi gyereknél is. (gyerek max 12 lesz egy időben, de ruha az kb 30) Azért még próbálok egyezkedni, hogy ésszerűsítsük a dolgot, mert ~360 oldal - jóformán üres - oldal kinyomtatása...
Az mennyire favágó megoldás, hogy táblakészítő lekérdezéssel megcsinálom a táblákat gyerekenként, ruhánként, és aztán ott számoltatom a készletet? (Amit ugye még nem tudok.
) Csak utána meg az a gond, hogy ha jön egy új gyerek, akkor új táblák kellenek, random táblanévre meg nem tudok hivatkozni. -
bpx
őstag
Azért, mert akkor született a döntés a napok kihagyásáról, és az Oracle meg fogta magát, és ezt vette alapul. Kipróbáltam, a területi beállításoknak erre nincs hatása, tehát én hiába állítom pl. UK-ra, attól még nem fogja az 1752-t 355 naposnak számolni, hanem ugyanúgy 1582-t mondja rövidebbnek.
Új hozzászólás Aktív témák
-
3200 - 3101
6041 - 6001 6000 - 5901 5900 - 5801 5800 - 5701 5700 - 5601 5600 - 5501 5500 - 5401 5400 - 5301 5300 - 5201 5200 - 5101 5100 - 5001 5000 - 4901 4900 - 4801 4800 - 4701 4700 - 4601 4600 - 4501 4500 - 4401 4400 - 4301 4300 - 4201 4200 - 4101 4100 - 4001 4000 - 3901 3900 - 3801 3800 - 3701 3700 - 3601 3600 - 3501 3500 - 3401 3400 - 3301 3300 - 3201 3200 - 3101 3100 - 3001 3000 - 2901 2900 - 2801 2800 - 2701 2700 - 2601 2600 - 2501 2500 - 2401 2400 - 2301 2300 - 2201 2200 - 2101 2100 - 2001 2000 - 1
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Fórumok
- Szoftverfejlesztés
- SQL kérdések
- (kiemelt téma)
- Sorozatok
- Melyik tápegységet vegyem?
- Gaming notebook topik
- A Capcom szerint a Pragmata még csak a kezdet lehet
- sziku69: Fűzzük össze a szavakat :)
- One otthoni szolgáltatások (TV, internet, telefon)
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- E-book olvasók
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- További aktív témák...
- 100.000 ft tól elvihető RÉSZLETRE Lenovo Pro 7 16IRX9H 4090
- G.SKILL Trident Z5 Neo RGB 32GB (2x16GB) 6000MHz CL30 - Alza élettartam garancia
- Palit GeForce RTX 4070 Ti SUPER GamingPro OC WHITE 16GB - Alza garancia 2027.11.10 - BESZÁMÍTOK
- PowerColor Radeon RX 7900 XTX RED DEVIL OC 24GB - Garancia - BESZÁMÍTOK!
- Új, Gamer félgép - GIGABYTE B650 EAGLE AX + Ryzen 7 7800X3D + Corsair 2x16GB DDR5 6200MHz
- Telefon felvásárlás!! Huawei P20 Lite/Huawei P20/Huawei P30 Lite/Huawei P30/Huawei P30 Pro
- Behringer B-CONTROL BCF2000 USB/MIDI kontroller
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB DDR5 RTX 5060 8GB GAMER PC termékbeszámítással
- Audi A6 C5 Multimedia - 1/32GB / 12 hó jótállás
- REFURBISHED és ÚJ - Lenovo ThinkPad Ultra Docking Station (40AJ)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


ha nem, akkor is.



Azaz fogod és írsz egy PowerShell scriptet mondjuk, ami ütemezve fut (Windows scheduler ugye). És a scripten belül azzal kezded, hogy letöltöd a file-t, ha ez sikerült, akkor tovább mész, és üríted a temp táblát bulk insertelsz. Ha ez sikerült, akkor mehet a végleges betöltés.
)
).