473,406 Members | 2,387 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,406 software developers and data experts.

Propel. DOA. Why?

Hi,

I'd like to be convinced otherwise but I have been reading about Propel
and similar packages and these packages seem like a waste of time.
Quotes from the Propel site.

"Propel makes applications easier to write"

To use Propel there is a bunch of overhead to prepare by making an XML
document describing the database. That seems like a real pain during
development especially if the database is changing along the way.

- - - -

"Propel enables you to perform complex queries and database
manipulations without writing a single SQL clause."....."The Criteria
class is able to build commonly used queries, but it does not pretend
to be capable of building any query. In cases where you need to perform
particularly complex queries you will need to write your own SQL
statements. "

First, why avoid SQL? I think it is the simplest part of a web app to
read. Even a complicated query is still a small self-contained
statement. Second, even if I want to use Propel to avoid SQL and if I
have a complicated SQL query then I'll still have to write SQL.

- - - -

///PROPEL CODE

$cton1 = $c->getNewCriterion(AuthorPeer::FIRST_NAME, "Leo",
Criteria::NOT_EQUAL);
$cton2 = $c->getNewCriterion(AuthorPeer::LAST_NAME,
array("Tolstoy", "Dostoevsky", "Bakhtin"),
Criteria::IN);
$cton1->addOr($cton2);
$c->add($cton1);

$results = AuthorPeer::doSelect($c);
foreach($results as $author) {
print "Author: " . $author->getLastName() . ", " .
$author->getFirstName() . "\n";
}

///SQL with PEAR DB

$result = $db->getAll("SELECT * FROM author WHERE first_name!='Leo' OR
last_name IN ('Tolstoy', 'Dostoevsky', 'Bakhtin')");

foreach($results as $author) {
print "Author: " . $author['last_name'] . ", " .
$author['first_name'] . "\n";
}

///To me the plain SQL with PEAR DB version is much easier to read.

- - - - - -

So what am I missing? People are spending a lot of time developing
Propel. I don't get it.

-Peter

Oct 14 '05 #1
0 1012

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: Artco News | last post by:
Is there a way to set php.ini to the alternate location? I'm trying to use 2 version of PHP(php4 and php5), but php.ini is in the way. Anyone knows how to circumvent this issues? Perhaps there is...
0
by: theshz | last post by:
I'm just starting to write a php web application, coming from the java world. I'd like to find some framework that makes most of the usual problems easier (session, error, i18n, templating, etc.),...
125
by: Raymond Hettinger | last post by:
I would like to get everyone's thoughts on two new dictionary methods: def count(self, value, qty=1): try: self += qty except KeyError: self = qty def appendlist(self, key, *values): try:
27
by: James | last post by:
http://www.gotdotnet.com/workspaces/workspace.aspx?id=ad7acff7-ab1e-4bcb-99c0-57ac5a3a9742
1
by: Propel Exacto | last post by:
Hey guys, I am using MySQL 4.0.18 and I have a field named "order_datetime" in which I store data in the format 20041001 23:00:00 (for example Oct 1, 2004 11pm) When I do a select statement...
1
by: rickycornell | last post by:
Greetings All, On past projects in PHP4 I had always just written my own libraries to deal with database interaction. Somehow I was operating in the dark that there were all these database...
5
by: laredotornado | last post by:
Hi, I'm using PHP 5.2. I am looking for some library or framework that can map/generate PHP objects to MySQL database tables. I found Propel, though a Google search, but it requires me to turn...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.