Quantcast
Channel: dBforums – Everything on Databases, Design, Developers and Administrators
Viewing all 13329 articles
Browse latest View live

The Final Version of dbForge SQL Complete v4.7 with Support for SQL Server 2014 is R

$
0
0
Devart team is proud to introduce the new version of dbForge SQL Complete v4.7 including such significant features as:
* Alias refactoring
* User defined table type suggestion
* Tables suggestion while creating indexes
* Support for new keywords introduced in SQL Server 2014

dbForge SQL Complete is a useful add-in for Microsoft SQL Server Management Studio and Microsoft Visual Studio. Free and advanced paid editions of the SQL code formatter offer powerful autocompletion and formatting of T-SQL code that replaces native Microsoft T-SQL Intellisense.

And some other features are added, you can find their description on the product page.

Pricing and Availability

Learn more about the prices and available editions at dbForge SQL Complete purchase page.

Download the trial version now and evaluate the benefits of the Professional edition features for free during a 30-day trial period at dbForge SQL Complete download page.

About Devart

Devart is a recognized vendor of database connectivity solutions for Microsoft .NET and Embarcadero Delphi development platforms as well as database development and management software.

Company's solutions support such databases as Microsoft SQL Server, Oracle, MySQL, PostgreSQL, InterBase, Firebird, SQLite, etc.

Along with database oriented software Devart offers productivity tools for Visual Studio which help developers to be empowered, stay focused, and deliver their best all the time.

For additional information about Devart, visit Devart: Database Management Software, Data Access Components, Developer Tools

square roots ?

$
0
0
Good Morning,


Are operators for 'to the power of' and 'square root' calculation available in Paradox queries ?

Thank you.

Kind regards,
peter

ANALYZE NO_WRITE_TO_BINLOG TABLE with dynamic tables (not hard coded)

$
0
0
Hi

I wish to do an "ANALYZE NO_WRITE_TO_BINLOG TABLE" with dynamic table names, because table definitions change

Code:

/usr/bin/mysql -e "ANALYZE NO_WRITE_TO_BINLOG TABLE (SELECT GROUP_CONCAT(TABLE_NAME SEPARATOR ', ') FROM INFORMATION_SCHEMA.TABLES where table_schema = 'portstab')"
this generates error:

Code:

ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(SELECT GROUP_CONCAT(TABLE_NAME SEPARATOR ', ') FROM INFORMATION_SCHEMA.TABLES w' at line 1
howto do that?

mysqlcheck maintenance madatory?

$
0
0
Hi

I read in "MySQL, Fifth Edition" by Paul DuBois that we should do a regular mysqlcheck.

We have all InnoDB tables. As far as I unterstand the tables get read and write locked during mysqlcheck.

The database will grow 100x in size, at the moment only initial load.

It means big downtime.

Code:

$ time mysqlcheck --all-databases
[...]

real    29m41.449s
user    0m0.019s
sys    0m0.015s

Code:

mysql> SELECT table_schema "Data Base Name", SUM( data_length + index_length) / 1024 / 1024
    -> "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema ;
+--------------------+----------------------+
| Data Base Name    | Data Base Size in MB |
+--------------------+----------------------+
| imzweffefr        |      38420.97170544 |
| information_schema |          0.00781250 |
| mysql              |          0.63046169 |
+--------------------+----------------------+
3 rows in set (5.86 sec)

You all do mysqlcheck? Is it really mandatory? What's the risk if I don't do it regularly?

Other DBA do mysqlcheck?

Stuck on filtering multiple like records

$
0
0
I have a FoxPro error table, it holds error log entries. Whenever any of our other FoxPro applications crash, they write the error info to this table. If any of those applications throw multiple errors before completely dying, then multiple errors get logged to that error table. For departmental metrics, we need to just log 1 event per crash. So, rather than rewrite over 100 application's event handling, right now we just want to grab a week's worth of the errors, copy them to a separate table, and then scrub that new table so it only keeps a solitary record. So basically if the user, computer, error number, and date&time (within 60 seconds) is the same, delete any additional records that exist. The Date and Time is stored exactly in the format 01/01/2014 01:05:55 PM. Here is what I have so far:

*!* METRICS.PRG This application needs to be scheduled to run every Sunday night at midnight to provide
*!* accurate metrics on VFP errors.
*!*
CLEAR
SET CENTURY ON
STORE DATE( ) TO gdDayNumEnd
gdDayNumStart = (gdDayNumEnd -7)
SELECT * FROM errors_tbl WHERE date > gdDayNumStart and date < gdDayNumEnd
COPY TO weekly

This gives me my week's worth of records out of the errors_tbl table and stores them to weekly.dbf, however I am stuck on performing the filtering part, especially since the time part is unique and I haven't figured out how to strip off the seconds from the timestamp, or perform some other similar measure. Any suggestions would be appreciated.

DB2 Log utilisation

$
0
0
Hi,

How to check db2 log utilisation and have the requirement send output to email id.We are using AIX operating system.Please help on this.

Regards,
MK

[4 Hire] Experienced Full-Stack PHP, MySQL, Javascript Consultant Available

$
0
0
Reliable. Affordable. Looking for long-term full-time contract work. Php programmer and consultant from Ukraine; over 13 years of experience in PHP, MySQL, Javascript, AJAX freelancing programming.
  • PHP 5 OOP, PEAR, Design Patterns, GoF
  • MVC, MVVM, MVP
  • XML, SOAP, JSON, XML-RPC, Web 2.0, mash-ups
  • Zend Framework 1, CakePHP, Wordpress , other / any
  • Doctrine 1 and 2, Propel ORM
  • PHPDoc, PHPUnit, opcode optimization, code refactoring, caching
  • HTML5, JavaScript, AJAX, jQuery, Twitter bootstrap, other / any
  • MySQL, Sphinx, database design, triggers, stored procedures
  • MySQL replication installation and administration, Percona backup
  • Google maps API, Openlayers
  • Linux on server, dedicated server, server administration
  • Web scraping, spidering, curl, phantomjs
  • Git, subversion, CSV, mercurial, trac, Bugzilla, other / any
  • APIs integration: Facebook, Google, Yahoo, Ebay, Twitter, other/any
  • Universal coder, alien code fixer, K.I.S.S., DRY, coding rules, code writing culture
  • Fluent English


Would love to try: mongodb, Phalcon, YAF, AngularJS

CV online with PROJECTS EXAMPLES:CV: a Php MySQL Javascript AJAX JQuery Framework Programmer Freelancer from Ukraine
Linkedin profile with RECOMMENDATIONS: Alexander Missa - Ukraine | LinkedIn
XING: https://www.xing.com/profile/Alexander_Missa2/cv
Stacksoverflow: Alexander M., Programmer from Ukraine - Stack Overflow Careers 2.0
INDEED: Alexander M., Programmer from Ukraine | Indeed
Skype: alecksmart or any web sites above

Scripting data from one Postgres server to another

$
0
0
Is there a way to script out a INSERT statement to select all data on a table on A server, and insert in same table on server B?


Something like:
----------------------------

Insert Into ServerB:10.10.1.1:5432.table.b

Select *
From ServerA:10.10.1.2:54000.tablea

TNS-12545: Connect failed because target host or object does not exist

$
0
0
Hi, I have problems with connection to DB. This is my first oracle db and I don't know how to solved this:

Code:

[oracle@fedora ~]$ lsnrctl start

LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 13-JUN-2014 21:35:50

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

Starting /ora01/app/oracle/product/12.1.0/db_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 12.1.0.1.0 - Production
System parameter file is /ora01/app/oracle/product/12.1.0/db_1/network/admin/listener.ora
Log messages written to /ora01/app/oracle/diag/tnslsnr/fedora/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=fedora.dbaora.com)(PORT=1521)))
TNS-12545: Connect failed because target host or object does not exist
 TNS-12560: TNS:protocol adapter error
  TNS-00515: Connect failed because target host or object does not exist


Listener failed to start. See the error message(s) above...

And log file:
/ora01/app/oracle/diag/tnslsnr/fedora/listener/alert/log.xml
Code:

<msg time='2014-06-13T21:36:07.354+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1' version='1'>
 <txt>System parameter file is /ora01/app/oracle/product/12.1.0/db_1/network/admin/listener.ora
 </txt>
</msg>
<msg time='2014-06-13T21:36:07.354+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>Log messages written to /ora01/app/oracle/diag/tnslsnr/fedora/listener/alert/log.xml
 </txt>
</msg>
<msg time='2014-06-13T21:36:07.354+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>Trace information written to /ora01/app/oracle/diag/tnslsnr/fedora/listener/trace/ora_3498_140636955395584.trc
 </txt>
</msg>
<msg time='2014-06-13T21:36:07.354+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>Trace level is currently 0
 </txt>
</msg>
<msg time='2014-06-13T21:36:07.354+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>
 </txt>
</msg>
<msg time='2014-06-13T21:36:07.357+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>Started with pid=3498
 </txt>
</msg>
<msg time='2014-06-13T21:36:07.360+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
 </txt>
</msg>
<msg time='2014-06-13T21:36:24.484+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=fedora.dbaora.com)(PORT=1521)))
 </txt>
</msg>
<msg time='2014-06-13T21:36:24.484+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>TNS-12545: Connect failed because target host or object does not exist
 TNS-12560: TNS:protocol adapter error
  TNS-00515: Connect failed because target host or object does not exist

 </txt>
</msg>
<msg time='2014-06-13T21:36:24.484+02:00' org_id='oracle' comp_id='tnslsnr'
 type='UNKNOWN' level='16' host_id='fedora.dbora.com'
 host_addr='127.0.0.1'>
 <txt>No longer listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
 </txt>
</msg>

get id in trigger before delete

$
0
0
My Table is
create table dtrigger (id int not null primary key auto_increment,name varchar(64));


mysql> select * from dtrigger;
+----+------+
| id | name |
+----+------+
| 1 | qwe |
| 2 | asd |
| 3 | zxc |
| 4 | qaz |
| 5 | wsx |
| 6 | edc |
+----+------+

I want to create trigger as if

delete from dtrigger where name='qwe' then corresponding
id goes to other table before deletion

Hello Everyone

$
0
0
Hi i am rosario my friend call me rose for short, i love to learn more from other people ideas also i want to share what i have, i work as one of the admin of a chatroom chatwing live chat, those who loves to have own a chatroom maybe i can help you.. again thank you for allowing me here.

asp mssql register with md5 no effect

$
0
0
hi all i hope some one can help me about this..

here my register page.
not my problem is .. my database working fine,
after register all will be insert .. but md5 not work fine

i need to configure for md5 30text
i hope some one can correct me.. thank you. because have this forum


<!--#include file="inc/conn.asp"-->
<!--#include file="inc/lib.asp"-->
<!--#include file="inc/md5.asp"-->
<!--#include file="inc/config.asp"-->

<%
if(request("action")="save") then
UserName = GetPostField("UserName")
oldpass = GetPostField("oldpass")
moldpass = GetPostField("moldpass")
ans = GetPostField("ans")
quest = GetPostField("quest")
email = GetPostField("email")
num = GetPostField("num")
qq = GetPostField("qq")
CheckCode = GetPostField("Checkcode")

checkzw(UserName)

If CheckCode=Empty Or Trim(Session("MuGetCode"))<>CheckCode Then
msg("ÄúÌîдµÄÑéÖ¤ÂëÓëϵͳ²úÉúµÄ²»Ò»Ö£¬ÇëÖØÐÂÊäÈë" )
end if

if num="0" then msg("¶Ô²»Æð,Ö¤¼þºÅÂë±ØÐëΪÊý×Ö")

if(ChkInvaildWord(UserName) or ChkInvaildWord(email) or ChkInvaildWord(oldpass) or ChkInvaildWord(moldpass) or ChkInvaildWord(quest) or ChkInvaildWord(ans) or ChkInvaildWord(num) or ChkInvaildWord(qq) or ChkInvaildWord(ServerCode)) then
msg("Çë²»ÒªÊäÈë·Ç·¨×Ö·û")
end if

if oldpass <> moldpass then
msg("Á½´ÎÃÜÂë²»Ïàͬ")
end if

md5pass=md5(oldpass,32)
md5User=md5(UserName,32)

Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "Select * from usertbl where Account='"&UserName&"'",conn
query = "select account from usertbl where passwd = '" & oldpass & "'"
if Not rs.Eof then
rs.close
msg("¸ÃÓû§ÃûÒѾ*±»×¢²á£¬ÇëʹÓÃÆäËûÓû§Ãû")
else


conn.execute("insert into usertbl (Account,passwd) values ('"& UserName &"','"& oldpass &"') ")

rs.close


'×¢²áËͽðÇ®

set rs = nothing
set rs1 = nothing
msg "¹§Ï²Äú,×¢²á³É¹¦"
End If

else

msg3("ÄãµÄIpÐÅÏ¢ÒѾ*±»¼Ç¼£¬Çë²»Òª·Ç·¨Ìá½»")

end if
%>

Group by clause based on condition

$
0
0
tblScore contains score for each problem

id problemID score
------------------------
1 1 10
2 2 30

tblSubmission contains problem submissions for each user

id user problemID accepted
-----------------------------------------------
1 UserA 1 0
2 UserA 1 0
3 UserA 1 1
4 UserA 2 1
5 UserB 1 0
6 UserB 1 1
7 UserB 2 1


For UserA :
- For problemID 1
-> submitted three times
-> rejected for first two submission and accepted on third submission.
- For problemID 2
-> submitted one time
-> accepted on first submission

For UserB :
- For problemID 1
-> submitted two times
-> rejected for first submission and accepted on second submission.
- For problemID 2
-> submitted one time
-> accepted on first submission

Now I would like to process the table and want to get the following result :

user Score
--------------------------
UserA 36 (6 + 30)
UserB 38 (8 + 30)

Explanation :
- For each rejected submission, a -2 point penalty.
- UserA have submitted probelmID 1
- > score of problemID 1 is 10.
- > first two times rejectd
- > third time accepted.
-> score = 10 - 4 = 6
- UserA have submitted problemID 2
- > score of problemID 2 is 30
- > first time accepted. No penalty will be counted
- > score = 30

so final score for UserA = 30 + 6 = 36
Similar for UserB.

I know all I am doing is explanations. I have tried a lot with gorup by and other stuffs. May be my lack of knowledge on SQL is the problem.

I would really appreciate if someone help me on this.

Thank You

rows clubbed based on Quarters

$
0
0
Hi all,

Please help me to write a query to get THE expected result set

DB2 V9.1/ZOS
URN_NAME CHAR(5)
ST_DATE DATE
ST_QNTY INTEGER


The same URN_NAME has to be clubbed with one row with quarter values

Ex1:
('AAA','B1111','2014-03-31',10)
('AAA','B1111','2014-12-31',10)

The same URN_NAME is giving ST_QNTY as 10 for differnt quarters( q1 and q4)
So the row sholud come like below

URN URN_NAME Q1 Q2 Q3 Q4

AAA B1111 10 0 0 10

Ex2:
('BBB','C2222','2014-08-31',10)
('BBB','C2222','2014-10-31',6)

Result
BBB C2222 0 0 10 6
Code:

WITH TEMP(URN,URN_NAME,ST_DATE,ST_QNTY)
VALUES(
('AAA','A1111','2014-05-31',10)
('AAA','B1111','2014-03-31',10)     
('AAA','B1111','2014-12-31',10)     
('AAA','C2222','2014-08-31',10)     
('BBB','A1111','2014-06-27',10)
('BBB','B1111','2014-03-31',5)     
('BBB','C2222','2014-08-31',10)
('BBB','C2222','2014-10-31',6)
('BBB','D3333','2014-10-31',2)     
('BBB','A2222','2014-03-31',5)
('BBB','E4444','2014-10-31',2)
AS
SELECT URN
,URN_NAME
,ST_DATE
,CASE WHEN QUARTER(ST_DATE) = 1
    THEN ST_QNTY 
 END AS Q1
,CASE WHEN QUARTER(ST_DATE) = 2
    THEN ST_QNTY 
 END AS Q2
,CASE WHEN QUARTER(ST_DATE) = 3
    THEN ST_QNTY 
 END AS Q3
,CASE WHEN QUARTER(ST_DATE) = 4
    THEN ST_QNTY 
 END AS Q4
 

FROM TRAN_TABLE
GROUP BY
,URN_NAME
,ST_DATE
,ST_QNTY

ORDER BY

ST_DATE
)

EXPECTED RESULT SET

Code:

URN  URN_NAME  Q1  Q2  Q3  Q4 
AAA    B1111    10  0    0  10     
AAA    A1111      0  10  0    0     
AAA    C2222      0  0    10  0     


BBB    A2222    5    0    0    0   
BBB    B1111    5    0    0    0   
BBB    A1111    0    10  0    0       
BBB    C2222    0    0    10  6
BBB    D3333    0    0    0    2
BBB    E4444    0    0    0    2

Thanks,

Oracle 11g Reinstallation failure

$
0
0
Hi,

I have not properly uninstalled the old files, still the oracle services are available in services.msc. And i don't have my installed folder available now.

I'm not able to install it again, any help/suggestions would be appreciated.

Thanks in advance.

Fastest method to know the number of records from a select

$
0
0
Windows Server 2008
DB2 WSE 9.7.6

What is the fastest method to know the number of records from a select?
1.
Code:

SELECT COUNT(*) FROM TABLE WHERE condition
2.
Code:

EXPORT TO FILE.TXT OF DEL MODIFIED BY COLDEL; SELECT * FROM TABLE WHERE condition
and searching for the number of exported rows

3 Other?

Managing Data based on dropdown

$
0
0
Greetings All,

This may seem like a simple problem (I hope it is) but I cannot get this to work for me. I haven't had to use Access in many years and was just tasked with a project for my company.

Ideally I would like a dropdown with the various types of Admissions (ER, Admission, Readmission, Nursing Facility..etc) I need to be able to total each of these types based on a date range. I then have various calculations that I need to perform based on each of these totals. Grouping each of the admission types gets me the total I need but how can I call that value to another query to perform the calculation?

My table is currently laid out as such:
AdmID - Autonumber
PatientID - Number
AdmType - Dropdown (linked from another table)
AdmDate - Date/Time
AdmNote- Memo

We are using Access 2003 (I know it is outdated but we are a not-for-profit and until a time we can't use it I am sad to say it will stay that way).

Worse case scenario I could put a column for each type of admission and try query by date but that seems much more difficult.

Thank You

how to compare the current record to the next in the same table in terms of 'datetime

$
0
0
Hello people, I'm new here. I've been dealing with this problem for around 1 moth and I still don't get an answer, so I come to you looking for some help.

Problem: I’m going to explain this problem using the Sakila sample database and it data so it is easier for you (you can get it here: MySQL :: Sakila Sample Database).

Ok, so my question is how can I compare the current record to the next in the same table in terms of 'datetime'. This is how the table looks like:

payment_id customer_id staff_id rental_id amount payment_date last_update

1 1 1 76 2.99 25/05/2005 11:30:37 15/02/2006 22:12:30
2 1 1 573 0.99 28/05/2005 10:35:23 15/02/2006 22:12:30
3 1 1 1185 5.99 15/06/2005 00:54:12 15/02/2006 22:12:30
4 1 2 1422 0.99 15/06/2005 18:02:53 15/02/2006 22:12:30
5 1 2 1476 9.99 15/06/2005 21:08:46 15/02/2006 22:12:30

Using the above explanation in this sample, for each ‘staff_id’, how can I compare the current row with the next (using ‘payment_date’ for current and next), so it brings only the pair of records where the amount of the current record is the same as the next (something like current.amount = next.amount). This means that each record should be compared to the next of the same ‘staff_id’, and so on.

I’m currently using this query, which do the job, but it takes for ever. I know it works good because I setted LIMIT 3 and it brought the correct ones (you can test it as well if you have the Sakila sample database):

SELECT * FROM payment a
JOIN payment b ON a.staff_id = b.staff_id AND a.payment_date > b.payment_date AND a.amount = b.amount
LEFT JOIN payment c ON a.staff_id = c.staff_id AND c.payment_date < a.payment_date AND c.payment_date > b.payment_date
WHERE c.payment_id IS NULL
LIMIT 3;

Additionally, this is what 'EXPLAIN' brought in the query above:

# id, select_type, table, type, possible_keys, key, key_len, ref, rows, Extra
'1', 'SIMPLE', 'a', 'ALL', 'idx_fk_staff_id', NULL, NULL, NULL, '16086', NULL
'1', 'SIMPLE', 'b', 'ref', 'idx_fk_staff_id', 'idx_fk_staff_id', '1', 'sakila.a.staff_id', '4021', 'Using where'
'1', 'SIMPLE', 'c', 'ref', 'idx_fk_staff_id', 'idx_fk_staff_id', '1', 'sakila.a.staff_id', '4021', 'Using where; Not exists'


Thank you. :p

Visible Not Working

$
0
0
Access 2013

Can anyone tell me why the first sub works and the second does not? The control 'chkCondoPU' is set to visible = yes in property sheet. Third sub is so it will refresh when I change records.
cmbCustType = text in combo box
chkCondoPU = y/n field
No debug errors.

Thanks, Scott

Code:

Option Compare Database
Option Explicit

Private Sub chkCondoPU_Click()

If Me.chkCondoPU = True Then
DoCmd.OpenForm "frmCondoContacts", , , "[customerLU]=" & Me![nameID]
Me.cmdOpenCondContactsFrm.Visible = True
End If

End Sub

Private Sub cmbCustType_AfterUpdate()

If Me.cmbCustType = "Condo" Then
Me.chkCondoPU.Visible = True
Else
Me.chkCondoPU.Visible = False
End If

End Sub

Private Sub Form_Current()

If Me.cmbCustType = "Condo" Then
Me.chkCondoPU.Visible = True
Else
Me.chkCondoPU.Visible = False
End If

End Sub

count of yes/no field

$
0
0
I have a query with the following SQL to count a yes/no check box.

SELECT RAI.[Override not to Lodge], Count(RAI.[Override not to Lodge]) AS [CountOfOverride not to Lodge]
FROM RAI
GROUP BY RAI.[Override not to Lodge]
HAVING (((RAI.[Override not to Lodge])=Yes));

This works great. Does exactly what I want. My question is when I run a report if there are no yes responses I would like the report to show 0 and not leave it blank.

Thanks
Viewing all 13329 articles
Browse latest View live